Золотое соотношение - это количественная стратегия торговли, которая пытается использовать золотой крест краткосрочных и долгосрочных скользящих средних в качестве торговых сигналов.
Стратегия в основном основана на двух скользящих средних: 200-дневный MA как долгосрочный MA и 10-дневный MA как краткосрочный MA. Сигнал покупки генерируется, когда краткосрочный MA пересекает долгосрочный MA; Сигнал продажи генерируется, когда краткосрочный MA пересекает длинный MA. Это знаменитый
В частности, длинная позиция будет открыта, если выполнены следующие условия:
Условия закрытия позиции следующие:
Стратегия имеет следующие преимущества:
Стратегия также сопряжена с некоторыми рисками:
Для снижения этих рисков можно рассмотреть следующие меры оптимизации:
Существует возможность дальнейшей оптимизации стратегии:
Подводя итог, золотой коэффициент движущейся средней торговой стратегии является простой и эффективный тренд следующей стратегии. Он генерирует торговые возможности с использованием классических MA кроссовер сигналов и имеет остановки для управления рисками. Стратегия может быть еще больше улучшена с помощью многоиндикаторных комбинаций, оптимизации параметров, машинного обучения и т. Д. Для получения лучшей эффективности стратегии.
/*backtest start: 2022-12-29 00:00:00 end: 2024-01-04 00:00:00 period: 1d basePeriod: 1h 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/ // © tsujimoto0403 //@version=5 strategy("聖杯", overlay=true,default_qty_type=strategy.percent_of_equity, default_qty_value=100) //ユーザーインプットの準備 malongperiod=input.int(200,"長期移動平均BASE200",group = "パラメータ") mashortperiod=input.int(10,"長期移動平均BASE10",group = "パラメータ") stop=input.int(20,title = "損切の割合%",group = "パラメータ") profit=input.int(5,title = "利食いの割合%",group = "パラメータ") startday=input(title="バックテストを始める日", defval=timestamp("01 Jan 2018 13:30 +0000"), group="期間") endday=input(title="バックテスを終わる日", defval=timestamp("1 Jan 2099 19:30 +0000"), group="期間") //使う変数 var float stopprice=0 var float takeprofit=0 //とりあえず使うインジケーターをプロット malong=ta.sma(close,malongperiod) mashort=ta.sma(close,mashortperiod) plot(malong,color=color.aqua,linewidth = 2) plot(mashort,color=color.yellow,linewidth = 2) bgcolor(ta.rsi(close,3)<30?color.rgb(229, 86, 86, 48):na) //期間条件 datefilter = true //エントリー条件 if close>malong and close<mashort and strategy.position_size == 0 and datefilter and ta.rsi(close,3)<30 strategy.entry(id="long", direction=strategy.long) if strategy.position_size>0 strategy.exit(id="long",stop=(1-0.01*stop)*strategy.position_avg_price) //売り if strategy.position_size > 0 and close>mashort and close<low[1] strategy.close(id ="long")