
A estratégia de compra de queda de preço em vários prazos é uma estratégia de negociação automática relativamente simples, que pode obter ganhos significativos durante a fase de tendência ascendente. No entanto, nem todos os quedos de preço são adequados para a compra, e é necessário otimizar cada transação de acordo com diferentes prazos.
A estratégia usa um período de 1 hora para capturar uma queda súbita de preços, enquanto há um aumento significativo de preços nas últimas 12 horas. Em uma tendência ascendente de preços, o colapso instantâneo causado pelo lucro oferece um ótimo momento para entrar no mercado.
A configuração do script foi otimizada para o período de 30 minutos. Você pode ajustar os parâmetros para adaptar-se a diferentes períodos de tempo.
O sistema emite um sinal de compra quando as seguintes condições são atendidas:
Preços caíram 1% em relação às duas linhas K anteriores (quadro de tempo de 1 hora = duas linhas K de 30 minutos)
Preços aumentaram 3% nas últimas 12 horas (K-line = período de tempo predefinido de 24 e 30 minutos)
A configuração foi otimizada e foi testada mais de 150 vezes em mais de 20 pares de criptomoedas diferentes.
A estratégia assume 30% do capital disponível para cada ordem de negociação. A estratégia considera uma taxa de transação de 0,1% que corresponde à taxa de base da Binance (a maior exchange de criptomoedas do mundo).
A ideia central de uma estratégia de compra de queda de preços em múltiplos prazos é combinar os prazos de longo e curto prazos para determinar o momento de entrada no mercado.
Em primeiro lugar, determine se houve uma queda súbita no preço em um período de 1 hora. Isso é confirmado por julgar se houve uma queda de mais de 1% na linha K atual em relação às duas linhas K anteriores.
Em segundo lugar, julgar se há um aumento significativo no preço na linha longa no período de 12 horas. Aqui é confirmado por calcular se o aumento de preço atingiu 3% nas últimas 12 horas.
Só se dá um sinal de compra quando há uma tendência de queda no quadro de curto prazo e um quadro de longo prazo está em alta.
Essa combinação evita a compra cega em tendências de baixa de longo prazo, mas também permite capturar as oportunidades de compra oferecidas por ajustes de curto prazo. A combinação de diferentes prazos torna a estratégia de negociação mais estável e confiável.
Tecnicamente, a estratégia é executada através da invocação de dois parâmetros diferentes.perc_change()A função realiza dois julgamentos de prazos de tempo: um julgando o aumento das últimas 12 horas e um julgando o aumento das últimas 1 hora. Quando ambos os requisitos são satisfeitos simultaneamente, um sinal de compra é emitido.
A maior vantagem da estratégia de compra de queda de preços em quadros de tempo múltiplos é a capacidade de avaliar a tendência e aproveitar o momento de compra de ajustes de curto prazo. Em particular, existem as seguintes vantagens:
A combinação de dois quadros de tempo mais curtos evita a compra em queda mais longa, reduzindo assim perdas desnecessárias.
Os quadros de tempo mais curtos permitem capturar ajustes bruscos, que proporcionam preços de compra mais baixos.
A retrospectiva otimizou os parâmetros para tornar a estratégia mais adequada para as características de alta volatilidade das criptomoedas.
A simulação é mais parecida com o ambiente de negociação real, levando em consideração os custos de transação.
Lógica de negociação simples e configuração de parâmetros, fácil de entender e ajustar.
É amplamente aplicável a diferentes pares de negociação, com maior flexibilidade.
As estratégias de compra de preços de queda em quadros de tempo múltiplos também apresentam riscos, que se concentram nos seguintes pontos:
O risco de uma falsa ruptura não pode ser totalmente evitado, e uma correção a curto prazo pode ser uma inversão da tendência a longo prazo.
A configuração de parâmetros fixos pode não ser totalmente adaptada às mudanças do mercado e precisa ser ajustada.
A resposta é que o Always funciona bem em simulações, mas há diferenças nas transações reais.
A existência de um certo atraso de tempo pode fazer com que se percam os melhores pontos de compra para as flutuações de preços de curto prazo.
Uma única estratégia de negociação é vulnerável a riscos sistêmicos.
A transação de alta frequência aumenta a carga de taxas de transação.
Para responder aos riscos estratégicos, podem ser consideradas as seguintes medidas de otimização:
Adicionar mais indicadores para avaliar tendências de longo e curto prazo, aumentando a precisão de avaliação.
Optimizar a configuração de parâmetros para que seja mais dinâmica e se adapte às mudanças do mercado.
Teste estratégias em ambientes reais, medindo a diferença entre o feedback e o disco.
Ajustar adequadamente os prazos para reduzir o atraso.
A utilização de estratégias diferentes para diversificar o risco sistémico.
Estabelecer um limite de perda razoável e controlar o risco de uma única transação.
A estratégia de compra de queda de preços em quadros de tempo múltiplos ainda tem muito espaço para otimização, principalmente a partir dos seguintes aspectos:
Adicionar mais indicadores de avaliação, como o Brinks, RSI e outros, para aumentar a estabilidade da estratégia.
Adicionar modelos de aprendizagem de máquina para otimizar dinamicamente os parâmetros e adaptar-se às mudanças do mercado.
Optimizar a estratégia de stop loss e reduzir o risco de transações individuais.
Tente fazer um retorno em mais pares de negociação e períodos de tempo para encontrar a melhor combinação de parâmetros.
Para evitar o engano de arbitragem, é necessário combinar os indicadores com a variação do volume de transação.
Adicionar módulos de gerenciamento de risco, como a alocação de ativos, controle de posição, etc., para controlar o risco geral.
Tente outros tipos de estratégias de negociação algorítmica, como rastreamento de tendências, arbitragem, etc.
Explorar combinações de multi-quadros de tempo mais complexos, procurando combinações de parâmetros ótimos.
A plataforma de negociação de criptomoedas é um dos principais veículos de negociação de criptomoedas no mundo.
Através dos métodos de otimização acima, a estratégia pode ser mais estável, inteligente e abrangente, adaptando-se à complexidade do mercado de criptografia. Mas qualquer otimização precisa ser testada com cuidado para evitar problemas de otimização excessiva.
A estratégia de compra de queda de preço em quadros de tempo múltiplos é, em geral, uma estratégia de negociação de linha curta muito prática. Ela se concentra em duas dimensões temporais, a curta e a longa, ao mesmo tempo, mantendo-se relativamente eficiente e aumentando a precisão de julgamento. Com configuração e otimização razoáveis de parâmetros, ela pode se adaptar à maioria dos mercados de negociação, especialmente em produtos de tendência.
No entanto, como qualquer estratégia de automação, ela tem suas limitações, que exigem que os comerciantes permaneçam racionais e continuamente otimizem e se ajustem para se adaptar às mudanças no mercado. Uma estratégia bem-sucedida é sempre em constante evolução, não estática.
Em suma, a estratégia de compra de queda de preço de vários quadros temporais fornece um excelente exemplo de negociação algorítmica. Ela resume os elementos básicos de negociação algorítmica, como escolha de diferentes quadros temporais, configuração de parâmetros, otimização de retrospectiva e controle de risco.
/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule
//@version=1
strategy(shorttitle='Multi Time Frame Buy the Dips',title='Multi Time Frame Buy the Dips (by Coinrule)', overlay=true, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)
//Backtest dates
fromMonth = input(defval = 1, title = "From Month")
fromDay = input(defval = 10, title = "From Day")
fromYear = input(defval = 2020, title = "From Year")
thruMonth = input(defval = 1, title = "Thru Month")
thruDay = input(defval = 1, title = "Thru Day")
thruYear = input(defval = 2112, title = "Thru Year")
showDate = input(defval = true, title = "Show Date Range")
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => true // create function "within window of time"
inp_lkb = input(24, title='Lookback Long Period')
inp_lkb_2 = input(2, title='Lookback Short Period')
perc_change(lkb) =>
overall_change = ((close[0] - close[lkb]) / close[lkb]) * 100
// Call the function
overall = perc_change(inp_lkb)
overall_2 = perc_change(inp_lkb_2)
//Entry
dip= -(input(1))
increase= (input(3))
strategy.entry(id="long", long = true, when = overall > increase and overall_2 < dip and window())
//Exit
Stop_loss= ((input (3))/100)
Take_profit= ((input (4))/100)
longStopPrice = strategy.position_avg_price * (1 - Stop_loss)
longTakeProfit = strategy.position_avg_price * (1 + Take_profit)
strategy.close("long", when = close < longStopPrice or close > longTakeProfit and window())