この戦略は,二重移動平均の黄金十字と死十字に基づいて設計されています. 短期移動平均が長期移動平均を上回るとロングになり,短期移動平均が長期移動平均を下回るとポジションを閉じる. 戦略はシンプルで理解しやすいので,初心者が学ぶのに適しています.
戦略は主にSMA (近14%) とSMA (近28%) の指標に基づいています.
まず,短距離移動平均値と長距離移動平均値を定義します.
short_ma = sma(close, 14)
long_ma = sma(close, 28)
黄金十字と死十字を基準に 入出を決める
longCondition = crossover(short_ma, long_ma)
shortCondition = crossunder(short_ma, long_ma)
短いMAが長いMAを横切るときにロングする.
strategy.entry("Buy", strategy.long, when = longCondition)
短期MAPが長期MAPを下回る場合 閉じるポジション:
strategy.close_all(when = shortCondition)
論理は単純で明確で,入口と出口を決定するために二重MAsのクロスオーバーを使用しています. 容量にいくつかの傾向があります.
戦略は以下の側面で最適化できます.
適正な組み合わせを見つけるために, (5, 10), (10, 20), (20, 60) など,異なる短時間および長時間の MA 期間をテストする.
取引量や価格格差などのフィルターをMAクロスオーバーの近くに追加し,さまざまな市場で過剰な取引を避ける.
ストップ損失価格を設定するか,MAをストップ損失ラインとして使用して単一の取引損失を制御します.
MACD,KDJなどの補助指標を追加して戦略のパフォーマンスを向上させる.
交差点に直接入力するのではなく,MAsの近くでより良いエントリーポイントを見つけます.例えば,MAのディバージェンスポイントで入力します.
ダブルMA戦略は,初心者にとって使いやすい.しかし,市場変動に敏感で,損失のリスクがあります.パラメータを最適化し,フィルターを追加し,ストップロスを組み込み,他の指標を組み合わせて改善することができます. 強いトレンドではうまく機能できますが,レンジング市場で慎重にまたは適切なストップロスを使用する必要があります.
[/トランス]
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //@version=2 // strategy("Tester", pyramiding = 50, default_qty_type = strategy.cash, default_qty_value = 20, initial_capital = 2000, commission_type = strategy.commission.percent, commission_value = 0.25) minGainPercent = input(0.6) gainMultiplier = minGainPercent * 0.01 + 1 longCondition = crossover(sma(close, 14), sma(close, 28)) shortCondition = crossunder(sma(close, 14), sma(close, 28)) avg_protection = input(1) gain_protection = input(1) strategy.entry("Buy", strategy.long, when = longCondition and (avg_protection >= 1 ? (na(strategy.position_avg_price) ? true : close <= strategy.position_avg_price) : true)) strategy.close_all(when = shortCondition and (gain_protection >=1 ? (close >= gainMultiplier * strategy.position_avg_price) : true))