Segunda-feira Reversão Tendência intradiária Seguindo estratégia

Autora:ChaoZhang, Data: 2023-11-06 15:34:06
Tags:

img

Resumo

A ideia principal desta estratégia é lucrar com a reversão intradiária de segunda-feira usando a tendência seguinte.

Princípios

A lógica central é:

  1. Verifique se é segunda-feira, se for sim, prossiga para as próximas etapas;

  2. Identificar se existe um padrão de inversão de tendência ascendente - Fechar[1] < Fechar[2] e Fechar[2] < Fechar[3];

  3. Se o padrão de reversão for confirmado, vá longo no fechamento da 3a barra para seguir a tendência;

  4. Sair se a alta de hoje for ultrapassada, ou se for atingido o stop loss;

  5. Posição próxima após 6 horas.

A estratégia capitaliza na reversão específica de segunda-feira, identifica padrões de reversão para ir longo em mínimos relativos para lucros.

Vantagens

As maiores vantagens são:

  1. Lucros decorrentes de reversões de segunda-feira durante períodos específicos;

  2. sinais de entrada claros provenientes de padrões de candelabro de inversão;

  3. Parar perdas e obter lucros para controlar os riscos;

  4. A abordagem da tendência maximiza os lucros;

  5. Lógica simples e fácil de entender;

Riscos

Há alguns riscos:

  1. Perdas se as inversões de segunda-feira não forem significativas

  2. O preço pode retroceder após a entrada que conduz ao stop loss;

  3. Mudanças repentinas no mercado podem resultar em grandes perdas de parada;

  4. A detenção prolongada também pode resultar em perdas;

As soluções são a otimização stop loss, encurtar o tempo de espera, e controlar o tamanho de perda única.

Melhorias

A estratégia pode ser melhorada:

  1. Utilização de aprendizagem de máquina para identificar inversões com mais precisão;

  2. Otimizar estratégias de stop loss como trailing stop ou stop loss parcial;

  3. Incorporar mais fatores para avaliar a força da tendência;

  4. Ajuste dinâmico do tempo de retenção;

  5. Utilização de algoritmos para encontrar parâmetros ótimos;

  6. Adicionar a troca de posição para negociação bidirecional;

Estes podem aumentar a taxa de vitórias e a rentabilidade.

Conclusão

Em conclusão, a estratégia capitaliza as reversões de segunda-feira, com regras claras de entrada / saída, para implementar uma estratégia de tendência simples. Pode alcançar melhores resultados do que o stop loss / take profit fixo. Outras otimizações são necessárias para lidar com a incerteza do mercado. A estratégia fornece uma referência para a negociação intradiária.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("ET Forex TurnaroundMonday", overlay=true)
FirstYear = input(2018, minval=2000, maxval=2023, step=1)
FirstMonth = 1 //input(1, minval=1, maxval=12, step=1)
FirstDay = 1 //input(1, minval=1, maxval=31, step=1)

deltaDay = input(0)
StartHour = input(0)

f_barssince(_cond, _count) => _barssince=bar_index-valuewhen(_cond, bar_index, _count)

HoldTime = input(6, step=1)

MM = input(1)

startHour = input(-7, step=1)
endHour = input(34, step=1)
exitHour = input(30, step=1)


startdateCond = (year > FirstYear or (year == FirstYear and (month > FirstMonth or (month == FirstMonth and dayofmonth >= FirstDay))))

iHour = hour
if iHour > 19 
    iHour := iHour-20
else
    iHour := iHour+4    
    
    
timeCondition = true //(iHour>=startHour and iHour<=endHour and iHour<=exitHour)

since_flat_condition = strategy.position_size == 0

entryPrice=strategy.position_avg_price
EntryLongCondition = dayofweek == (dayofweek.monday+deltaDay) and close[0] < close[1] and close[1]<close[2] and startdateCond //and timeCondition and iHour > StartHour
ExitTimeCondition = false//(f_barssince(since_flat_condition, 0)>=HoldTime)
ExitLongCondition = strategy.position_size > 0  and (close[0] > high[1])// or close[0]< entryPrice-abs(close[1]-close[2])*0.2)//(ExitTimeCondition) //iHour >= exitHour or 
strategy.initial_capital =50000
// MM Block
lots = if MM < 2 
    strategy.initial_capital 
else 
    strategy.equity

lots := lots/close

entryPrice:=strategy.position_avg_price
strategy.close("ETLong",when=(ExitLongCondition==true))
strategy.entry("ETLong", strategy.long, qty=lots, comment="OpenLong",when=(EntryLongCondition==true))



Mais.