
この策略は,黄金の交差死交差策略と呼ばれる.その主な考えは,移動平均の黄金の交差と死の交差の2つの異なる周期の2つの強力な技術指標信号を利用して,市場のトレンドの逆転を捕捉し,低買い高売りの効果を実現することである.
この戦略では,50周期と200周期のSMAを計算します.従来的に,50日線が上から下りて200日線を突破すると,死交差と呼ばれる,看板の信号になります.50日線が下から200日線を突破すると,金交差と呼ばれる,看板の信号になります.
この戦略の取引論理は,この2つの信号の出現に基づいてポジションを確立することです.具体的には,戦略は死交差の発生時に空白になり,金交差の発生時に多額になります.このようにして,市場トレンドの転換点の近くで利益を得ることができます.
さらに,戦略にはカスタマイズ可能な反測時間帯機能が提供されています. これは,さまざまな日付の範囲で戦略のパフォーマンスをテストし,これらの交差信号の実際の効果を検出することができます.
リスクに合わせて平均線パラメータを調整し,他の指標のフィルター信号と組み合わせて,資金管理をよくし,実際のリスクを減らすために実地検証戦略を実行できます.
この戦略は,以下のような点で最適化できます.
異なるパラメータが戦略のパフォーマンスに与える影響をテストすることで,よりよい均等なクロスラインの取引方法を見つけることができます.
この戦略は,移動平均線交差というクラシックな技術指標信号を利用して,市場の重要な転換点を捉えます.戦略の論理はシンプルで明確で,同時に便利な反省機能を提供します.我々は,トレンド追跡の構成要素として,判断を補助することができます.もちろん,現場で様々な外部要因を考慮する必要があり,単一の指標の盲目取引に依存することはできません.
/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("[S_R__9] - Death and Golden Cross", overlay=true)
// Specific Time Date Range For Backtest
startDate = input.int(title='Start Date', defval=1, minval=1, maxval=31, group='DATE CONFIG')
startMonth = input.int(title='Start Month', defval=1, minval=1, maxval=12, group='DATE CONFIG')
startYear = input.int(title='Start Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG')
endDate = input.int(title='End Date', defval=31, minval=1, maxval=31, group='DATE CONFIG')
endMonth = input.int(title='End Month', defval=12, minval=1, maxval=12, group='DATE CONFIG')
endYear = input.int(title='End Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG')
SPECIFIC_DATE = input.bool(title='USE SPECIFIC DATE ?', defval=false, group='DATE CONFIG')
inDateRange = SPECIFIC_DATE ? time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0) and time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0) : true
// Calculate 50 SMA and 200 SMA
sma50 = ta.sma(close, 50)
sma200 = ta.sma(close, 200)
// Detect a Death Cross (50 SMA crossing below 200 SMA)
deathCross = ta.crossunder(sma50, sma200)
// Detect a Golden Cross (50 SMA crossing above 200 SMA)
goldenCross = ta.crossover(sma50, sma200)
// Strategy Execution
if (inDateRange)
if (deathCross)
strategy.entry("Death Cross long", strategy.short)
if (goldenCross)
strategy.entry("Golden Cross short", strategy.long)
// Plot SMAs
plot(sma50, color=color.red, title="50 SMA")
plot(sma200, color=color.blue, title="200 SMA")
// Plotting Death Cross signal
plotshape(series=deathCross and inDateRange, title="Death Cross Signal", location=location.belowbar, color=color.red, style=shape.labeldown, text="DEATH CROSS")
// Plotting Golden Cross signal
plotshape(series=goldenCross and inDateRange, title="Golden Cross Signal", location=location.abovebar, color=color.green, style=shape.labelup, text="GOLDEN CROSS")