
この戦略は13と21周期指数移動平均 ((EMA) の交差をベースにした量化取引戦略である.戦略は,短期と長期のEMAの交差を観察することで,市場トレンドの変化を認識し,黄金交差が発生したときに多めにポジションを入れ,死交差が発生したときに空っぽにポジションを入れます.戦略の独特な点は,ダイナミックな色の変化を使用して視覚効果を高め,トレーダーが取引信号をより直感的に認識するのを助けることです.
戦略の核心的な論理は,2つの異なる周期の指数移動平均に基づいています:13周期の短期EMAと21周期の長期EMA.短期EMAを上方へ突破すると金十字が形成され,上昇傾向が形成され,システムで買取シグナルが生成されます.短期EMAを下方へ突破すると死十字が形成され,下方傾向が形成され,システムで売出シグナルが生成されます.戦略は,ダイナミックな色の表示を採用し,交差が起こるとEMA線の色を変え,緑は多頭信号,赤は空頭信号を表します.この視覚的フィードバックは,トレーダーが市場の状態を迅速に判断するのに役立ちます.
双均線交差ダイナミックカラー量化戦略は,技術分析の古典的理論と近代的なビジュアル化技術の組み合わせによる取引システムである.戦略は,EMAを交差して取引信号を生成し,ダイナミックカラー変化を使用して,取引決定をより直感的に視覚的に強化する.いくつかの固有のリスクがあるが,合理的な最適化とリスク管理によって,この戦略は効果的な取引ツールになることができる.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-03 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("EMA Strategy by clf", overlay=true)
// Input parameters for EMAs
shortEmaLength = input(13, title="Short EMA Length")
longEmaLength = input(21, title="Long EMA Length")
// Calculate EMAs
shortEma = ta.ema(close, shortEmaLength)
longEma = ta.ema(close, longEmaLength)
// Define the color variable with type
var color emaColor = na
// Determine the colors for the EMAs based on crossovers
if (ta.crossover(shortEma, longEma))
emaColor := color.green
else if (ta.crossunder(shortEma, longEma))
emaColor := color.red
// Plot EMAs on the chart with dynamic colors
plot(shortEma, title="Short EMA", color=emaColor, linewidth=2)
plot(longEma, title="Long EMA", color=color.red, linewidth=2)
// Generate buy and sell signals
longCondition = ta.crossover(shortEma, longEma)
shortCondition = ta.crossunder(shortEma, longEma)
// Plot buy and sell signals
plotshape(series=longCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Strategy entry and exit
strategy.entry("Long", strategy.long, when=longCondition)
strategy.close("Long", when=shortCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Short", when=longCondition)