Эта стратегия оценивает направление тренда на рынке путем расчета изменений объема торговли и использует подход, основанный на тенденциях, путем установления позиций в начале трендов и закрытия позиций по окончании трендов.
Стратегия полностью учитывает влияние изменений объема торговли на оценку тренда, используя индикаторы импульса для измерения силы тренда и более точного фиксирования поворотных точек тренда.
Стратегия включает в себя расчет порога объема торговли, чтобы отфильтровать нормальные колебания и фиксировать только коллективное поведение крупных фондов, избегая введения в заблуждение рыночным шумом.
Совместное рассмотрение цены и объема может эффективно предотвратить ложные прорывы.
Использование скользящих средних и логических критериев отфильтровывает большинство ложных сигналов.
Следование тенденциям, а не прогнозирование их изменения, хорошо подходит для средне- и долгосрочной торговли трендами и определения основного направления рынка.
Стратегия опирается в основном на изменения объема торговли для определения тенденций, и ее эффективность может быть снижена в продуктах с неактивным объемом торговли.
Данные о объеме торговли могут быть манипулированы, потенциально генерируя вводящие в заблуждение сигналы, поэтому необходимо следить за расхождениями между ценой и объемом.
Отношения между ценой и объемом часто отстают, потенциально не достигая оптимального времени вступления в начале тенденций.
Методы стоп-лосса могут преждевременно выйти из торгов, не способные постоянно отслеживать тенденции.
Неспособны эффективно реагировать на краткосрочные коррекции и могут быть нечувствительны к внезапным событиям.
Подумайте о включении скользящих средних, показателей волатильности для оптимизации входов и остановок; анализ объема цены с использованием большего количества источников данных, чтобы избежать вводящих в заблуждение сигналов; включение соответствующих технических индикаторов для улучшения способности реагировать на краткосрочные коррекции.
Оптимизируйте условия входа, включая скользящие средние, ичимоку кинко хё и т. д., чтобы подтвердить входы после начала тренда.
Оптимизируйте остановки с последующими остановками, поэтапными остановками и т. д., чтобы остановки тесно придерживались цены и отслеживали остановки тренда.
Добавьте трендовые показатели, такие как ADX, чтобы избежать неправильных сделок на рыночных рынках.
Оптимизируйте параметры с помощью более длительных обратных тестов, чтобы найти оптимальные комбинации параметров.
Расширить стратегию на больше продуктов, ищу инструменты более высокого качества с активным объемом.
Подумайте о добавлении моделей машинного обучения для использования большего количества данных для анализа цены и объема и улучшения качества сигнала.
Общая логика стратегии ясна, с интуитивными основными индикаторами, которые надежно определяют направление тренда. Преимущество заключается в том, что подчеркиваются изменения объема торговли, подходящие для отслеживания средне- и долгосрочных тенденций, но нужно следить за вводящими в заблуждение сигналами. Дальнейшее улучшение параметров, остановки потерь, комбинации индикаторов могут улучшить производительность в режиме реального времени.
/*backtest start: 2022-11-08 00:00:00 end: 2023-11-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Strategy for Volume Flow Indicator with alerts and markers on the chart", overlay=true) // This indicator has been copied form Lazy Bear's code lengthVFI = 130 coefVFI = 0.2 vcoefVFI = 2.5 signalLength= 5 smoothVFI=true ma(x,y) => smoothVFI ? sma(x,y) : x typical=hlc3 inter = log( typical ) - log( typical[1] ) vinter = stdev(inter, 30 ) cutoff = coefVFI * vinter * close vave = sma( volume, lengthVFI )[1] vmax = vave * vcoefVFI vc = iff(volume < vmax, volume, vmax) mf = typical - typical[1] vcp = iff( mf > cutoff, vc, iff ( mf < -cutoff, -vc, 0 ) ) vfi = ma(sum( vcp , lengthVFI )/vave, 3) vfima=ema( vfi, signalLength ) dVFI=vfi-vfima bullishVFI = dVFI > 0 and dVFI[1] <=0 bearishVFI = dVFI < 0 and dVFI[1] >=0 longCondition = dVFI > 0 and dVFI[1] <=0 shortCondition = dVFI < 0 and dVFI[1] >=0 plotshape(bullishVFI, color=color.green, style=shape.labelup, textcolor=#000000, text="VFI", location=location.belowbar, transp=0) plotshape(bearishVFI, color=color.red, style=shape.labeldown, textcolor=#ffffff, text="VFI", location=location.abovebar, transp=0) alertcondition(bullishVFI, title='Bullish - Volume Flow Indicator', message='Bullish - Volume Flow Indicator') alertcondition(bearishVFI, title='Bearish - Volume Flow Indicator', message='Bearish - Volume Flow Indicator') if(year > 2018) strategy.entry("Long", strategy.long, when=dVFI > 0 and dVFI[1] <=0) if(shortCondition) strategy.close(id="Long")