
La stratégie de rupture de la double ligne est une stratégie de négociation quantitative typique du suivi de la tendance. La stratégie juge la position en calculant des moyennes mobiles simples pour les différentes périodes et en définissant le signal de négociation comme une moyenne mobile de rupture de prix.
La logique de base de la stratégie de rupture à deux vitesses est la suivante:Utiliser des moyennes mobiles de différentes périodes pour capturer les tendances des prix et émettre des signaux de transaction lorsque les prix franchissent les moyennes mobiles。
Plus précisément, la stratégie utilise une moyenne mobile simple de 20 jours et une moyenne mobile simple de 60 jours. Ces deux moyennes mobiles peuvent être considérées comme des outils pour capturer les tendances à court terme et à moyen terme respectivement. Lorsque le prix à court terme dépasse le prix à moyen terme, ce qui signifie qu’il est actuellement en tendance à la hausse, il faut faire plus; lorsque le prix à court terme dépasse le prix à moyen terme, ce qui signifie qu’il est actuellement en tendance à la baisse, il faut réduire sa position.
Passé dans le codeta.crossoveretta.crossunderPour déterminer si le prix est supérieur ou inférieur à une moyenne mobile. Lorsqu’il est supérieur ou inférieur à une moyenne mobile, l’instruction est donnée pour augmenter ou diminuer la position.
Les avantages de cette stratégie sont les suivants:
Il y a aussi des risques liés à la stratégie de rupture à deux vitesses:
Les stratégies de rupture biuniversale peuvent être optimisées dans les dimensions suivantes:
La stratégie de rupture de double équilibre est une stratégie de suivi de tendance simple et pratique. Elle permet de capturer efficacement les tendances à moyen et long terme sans être perturbée par le bruit du marché à court terme. La stratégie est également facile à comprendre et à mettre en œuvre.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 4h
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/
// © Astorhsu
//@version=5
strategy("Astor SMA20/60", overlay=true)
backtest_year = input(2018, title='backtest_year') //回測開始年分
backtest_month = input.int(01, title='backtest_month', minval=1, maxval=12) //回測開始月份
backtest_day = input.int(01, title='backtest_day', minval=1, maxval=31) //回測開始日期
start_time = timestamp(backtest_year, backtest_month, backtest_day, 00, 00) //回測開始的時間函數
//Indicators
sma10 = ta.sma(close,10)
sma20 = ta.sma(close,20)
sma60 = ta.sma(close,60)
plot(sma20, color=color.green, title="sma(20)")
plot(sma60, color=color.red, title="sma(60)")
//進場條件
// trend1 = sma60 > sma20 //假設目前趨勢為60>20
longCondition = ta.crossover(close, ta.sma(close, 20))
if (longCondition)
strategy.entry("open long20", strategy.long, qty=1, comment="站上m20做多")
shortCondition = ta.crossunder(close, ta.sma(close, 20))
if (shortCondition)
strategy.close("open long20",comment="跌破m20平倉", qty=1)
longCondition1 = ta.crossover(close, ta.sma(close, 60))
if (longCondition1)
strategy.entry("open long60", strategy.long, qty=1, comment="站上m60做多")
shortCondition1 = ta.crossunder(close, ta.sma(close, 60))
if (shortCondition1)
strategy.close("open long60",comment="跌破m60平倉", qty=1)
// longCondition2 = ta.crossover(close, ta.sma(close, 10))
// if (longCondition2)
// strategy.entry("open long10", strategy.long, qty=1, comment="站上m10做多")
// shortCondition2 = ta.crossunder(close, ta.sma(close, 10))
// if (shortCondition2)
// strategy.close("open long10",comment="跌破m10平倉", qty=1)