Эта стратегия реализует автоматическую операцию открытия обнаружения количественных тенденций путем отслеживания тенденций движения цен и в сочетании с изменениями объема торговли.
Основная логика количественной стратегии торговли основана на отслеживании совпадения между тенденциями движения цен и изменениями в объеме торговли. В частности, стратегия использует разницу между ценой закрытия и ценой открытия как изменение цены, а затем умножает ее на объем торговли в течение дня, чтобы получить общую кривую цены и объема. Эта общая кривая может отражать тенденцию изменения цен и объем торговли сопровождает взаимосвязь одновременно. Затем вычисляется скользящая средняя этой совместной кривой в качестве критерия количественного тренда. Когда совместная кривая проникает в ее скользящую среднюю, генерируется сигнал покупки. Когда она падает ниже своей скользящей средней, генерируется сигнал продажи, тем самым реализуя операцию открытия количественного отслеживания изменений ценового тренда.
Эта стратегия сочетает в себе тенденции движения цен и изменения объема торговли, чтобы эффективно отфильтровать некоторые нечувствительные к цене ложные тенденции и снизить риски открытия и улучшить точность открытия. По сравнению с чистыми техническими индикаторами цен, эффект количественного отслеживания лучше. Эта стратегия также использует систему скользящих средних для установки динамических эталонных линий, которые могут автоматически адаптироваться к изменениям рыночных условий и обладают высокой гибкостью.
Эта стратегия в основном опирается на соотношение цена-объем для определения целесообразности количественной тенденции. Если соотношение цена-объем станет несовместимым, это приведет к увеличению рисков ошибочного суждения. Кроме того, неправильное установление скользящих средних параметров также повлияет на эффективность стратегии. Необходимо оптимизировать и протестировать для разных сортов и рыночных условий.
Для оптимизации стратегий следует использовать несколько фильтров, например, использовать индикаторы волатильности для определения качества тренда, ввести индикаторы настроения для определения психологии рынка и так далее. Также можно проверить изменение эффективности стратегии в соответствии с различными системами скользящих средних, чтобы найти оптимальный портфель параметров. Добавление обучения модели машинного обучения для суждения правил также является направлением для последующей оптимизации.
Эта количественная стратегия торговли реализует автоматическое открытие на основе отслеживания и оценки ценовой тенденции и отношения объема торговли, количественно определяя совпадение ценовых тенденций с энтузиазмом торговли, она может эффективно отфильтровывать недействительные сигналы и улучшать уровень успеха открытия.
/*backtest start: 2023-12-12 00:00:00 end: 2024-01-11 00:00:00 period: 30m 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/ // © avsr90 //@version=5 strategy(title="Lp-Op vol",shorttitle="LPV", max_bars_back = 5000,overlay=false,format=format.volume ) //Resolutions Resn=input.timeframe(defval="",title="resolution") Resn1=input.timeframe(defval="D",title="resolution") //Intraday Open and Last Price and Last price- Open Price calculations. Last_Price=math.round_to_mintick(close) Open_Price = request.security(syminfo.tickerid ,Resn1,close[1],barmerge.gaps_off, barmerge.lookahead_on) Op_Cl=math.round_to_mintick(Last_Price-Open_Price) //length from Intra Day Open Price Nifnum= ta.change(Open_Price) Length_Intraday=int(math.max(1, nz(ta.barssince(Nifnum)) + 1)) //Input for Length for Volume Length_Vol=input(defval=20, title="L for Vol") // Last Price- Open price Volume, Average Intraday Last price-Open Price Volume //and Volume Bars calculations. Op_Cl_Vol=(Op_Cl*volume) Avg_Vol_Opcl=ta.sma(Op_Cl_Vol,Length_Intraday) Vol_Bars=ta.sma(volume,Length_Vol) //Plots plot(Op_Cl_Vol,color=Op_Cl_Vol>0 ? color.green:color.red,title="OPCLV") plot(Avg_Vol_Opcl, title="Avg Vol", color=color.fuchsia) plot(Vol_Bars, title="Vol Bars", color=color.yellow) //Strategy parameters startst=timestamp(2015,10,1) strategy.entry("lo",strategy.long,when= ta.crossover(Op_Cl_Vol,Avg_Vol_Opcl) and ta.crossover(volume,Vol_Bars)) strategy.entry("sh",strategy.short,when=ta.crossunder(Op_Cl_Vol,Avg_Vol_Opcl)and ta.crossunder(volume,Vol_Bars ))