Além da estratégia de lucro do Trailing Stop


Data de criação: 2024-01-08 16:24:03 última modificação: 2024-01-08 16:24:03
cópia: 0 Cliques: 429
1
focar em
1166
Seguidores

Além da estratégia de lucro do Trailing Stop

Visão geral

A estratégia de ultrapassar o stop loss móvel é uma estratégia de negociação quantitativa baseada em indicadores de ultrapassar. A estratégia realiza stop losses e move stops através da construção de condições de entrada e saída de posições longas e curtas. A vantagem da estratégia é que é possível obter lucros mais elevados em tendências contínuas, enquanto que a maioria dos lucros pode ser bloqueada por meio de um stop loss móvel.

Princípio da estratégia

A estratégia é uma estratégia de acompanhamento de tendências baseada em excessos de indicadores. Excessos de indicadores podem determinar a direção da tendência de preços. Quando excessos de indicadores mudam de direção, geram sinais de compra e venda.

Análise de vantagens

A maior vantagem da estratégia é a combinação de discernimento de tendências e paradas móveis. Além disso, a lógica da estratégia é simples, clara e fácil de entender e implementar, o que também é uma vantagem da estratégia.

Análise de Riscos

O maior risco da estratégia é a sensibilidade ao fracasso da ruptura. Na zona de equilíbrio, a superação dos indicadores pode causar falsas rupturas e, portanto, errar na construção de posições. É fácil de ser enganado. Além disso, o mecanismo de parada móvel também pode parar prematuramente e perder o seguimento. Finalmente, a configuração inadequada de parada pode ser muito relaxada ou muito radical, aumentando o risco.

Direção de otimização

A estratégia pode ser otimizada de várias maneiras: 1) determinar razoavelmente os parâmetros do indicador excedido, evitando a criação de falsos sinais; 2) aumentar os mecanismos para julgar a confiabilidade do rompimento, como aumentar os sinais de volume de transação; 3) otimizar os parâmetros do stop móvel, minimizando o possível arbitragem, garantindo ganhos; 4) usar stop loss dinâmico baseado em volatilidade em vez de stop loss estático; 5) aumentar o conjunto de outros indicadores para aumentar a estabilidade da estratégia.

Resumir

A estratégia de parada de lucro e perda móvel é uma estratégia de acompanhamento de tendências melhor do que a estratégia geral. Ela pode julgar razoavelmente a direção da tendência e tem um mecanismo de parada móvel. Mas a estratégia também é mais sensível a falhas de ruptura e existe um certo risco.

Código-fonte da estratégia
/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ST Michael Moving TP", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=15)

// Stop loss and profit amount
stop_loss = input(1500, title="Stop Loss Amount")
profit = input (15000, title="Profit Amount")
LongTrailProfit = input (0.91, title = "Long Trailing Profit Taking")
ShortTrailProfit = input (1.01, title = "Short Trailing Profit Taking")

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step = 0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

long_condition = ta.change(direction) <0
short_condition = ta.change(direction) >0


stop_price_long = ta.valuewhen(long_condition, low[0]-stop_loss,0)
profit_price_long = ta.valuewhen(long_condition, high[0]+profit,0)
stop_price_short = ta.valuewhen(short_condition, high[0]+stop_loss,0)
profit_price_short = ta.valuewhen(short_condition, low[0]-profit,0)

atr=ta.atr(10)

intrade_long = strategy.position_size > 0
intrade_short = strategy.position_size < 0
exitConditionLong = (close < (close[1]*LongTrailProfit)) 
exitConditionShort = (close > (close[1]*ShortTrailProfit))

if (long_condition)
    strategy.entry("Long3", strategy.long)
if (intrade_long and exitConditionLong)
    strategy.close("Long3")

if (short_condition)
    strategy.entry("Short3", strategy.short)
if (intrade_short and exitConditionShort)
    strategy.close ("Short3")

if (strategy.position_size>0)
    strategy.exit("exit_long",from_entry="Long3",limit=profit_price_long,stop=stop_price_long)

if (strategy.position_size<0)
    strategy.exit("exit_short",from_entry="Short3",limit=profit_price_short,stop=stop_price_short)