
Стратегия представляет собой динамическую торговую систему, основанную на волновом трендовом индикаторе WaveTrend, которая идентифицирует состояние сверхпокупа и сверхпродажи на рынке, рассчитывая динамические изменения цен, и генерирует торговый сигнал при прорыве ключевого ценового уровня. Стратегия использует динамическую кривую с двойной сглаживающей обработкой (WT1 и WT2) для фильтрации рыночного шума и повышения надежности сигнала.
В основе стратегии лежит построение волнового трендового индикатора с помощью следующих шагов:
Это стратегия, разработанная с учетом разумной динамики трендов, эффективно захватывающая рыночные возможности для обратного обхода через волновые индикаторы трендов. Основные преимущества стратегии заключаются в ее надежном механизме генерации сигналов и хорошей настраиваемости. С помощью предлагаемой направленности оптимизации можно дополнительно повысить стабильность и прибыльность стратегии.
/*backtest
start: 2024-02-19 00:00:00
end: 2025-02-16 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy(title="WaveTrend [LazyBear] Strategy", shorttitle="WT_LB_Strategy", overlay=true)
// Pôvodné vstupné parametre
n1 = input.int(10, title="Channel Length")
n2 = input.int(21, title="Average Length")
obLevel1 = input.int(60, title="Over Bought Level 1")
obLevel2 = input.int(53, title="Over Bought Level 2")
osLevel1 = input.int(-60, title="Over Sold Level 1")
osLevel2 = input.int(-53, title="Over Sold Level 2")
// Výpočet WaveTrendu
ap = hlc3
esa = ta.ema(ap, n1)
d = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ta.ema(ci, n2)
// Vyhladené krivky
wt1 = tci
wt2 = ta.sma(wt1, 4)
// Plotovanie nulovej línie a OB/OS úrevní
plot(0, color=color.gray, linewidth=1)
plot(obLevel1, color=color.red)
plot(osLevel1, color=color.green)
plot(obLevel2, color=color.red)
plot(osLevel2, color=color.green)
// Plot WaveTrendu
plot(wt1, color=color.green, title="WT1")
plot(wt2, color=color.red, title="WT2")
plot(wt1 - wt2, color=color.blue, style=plot.style_area, title="WT Fill")
//------------------------------------------------------
// STRATEGY LOGIC (ukážková)
//------------------------------------------------------
if ta.crossover(wt1, wt2) and wt1 <= osLevel1
strategy.close("Short")
strategy.entry("Long", strategy.long)
if ta.crossunder(wt1, wt2) and wt1 >= obLevel1
strategy.close("Long")
strategy.entry("Short", strategy.short)