この戦略は、モメンタム取引と平均回帰という 2 つの古典的な取引手法を組み合わせた高頻度定量取引戦略です。この戦略は 5 分間の時間枠で実行され、指数移動平均 (EMA) を使用してトレンドの機会を捉えると同時に、ボリンジャー バンドを使用して買われすぎと売られすぎの価格条件を識別し、二重の取引ロジックの相補的な利点を実現します。この戦略は柔軟なパラメータ設定で設計されており、さまざまな市場状況に応じて、単一取引モードまたは複合取引モードを有効にすることを選択できます。
この戦略では、2 層の取引ロジック設計を採用しています。
この戦略は、モメンタムと平均回帰という 2 つの古典的な取引手法を組み合わせて、高い適応性と制御可能なリスクを備えた高頻度の定量取引システムを構築します。この戦略のモジュール設計とパラメータの柔軟性により、実用的な価値が高まります。リスク管理の継続的な最適化と改善を通じて、実際の取引で安定した収益を達成することが期待されます。
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Momentum and Mean Reversion Strategy", shorttitle = "MMV_V1", overlay=true)
// --- Inputit ja parametrit ---
use_momentum = input.bool(true, title="Käytä Momentum-strategiaa")
use_mean_reversion = input.bool(true, title="Käytä Keskiarvoon Palautumista (BB)")
// Momentum-parametrit
short_ema_period = input.int(50, title="Lyhyt EMA")
long_ema_period = input.int(400, title="Pitkä EMA")
// Bollinger Band -parametrit
bb_length = input.int(20, title="BB Pituus")
bb_std = input.float(2.0, title="BB Standardipoikkeama")
// --- Momentum-strategia: EMA-risteämä ---
short_ema = ta.ema(close, short_ema_period)
long_ema = ta.ema(close, long_ema_period)
momentum_long_signal = ta.crossover(short_ema, long_ema)
momentum_short_signal = ta.crossunder(short_ema, long_ema)
// --- Keskiarvoon palautuminen: Bollinger Bands ---
[bb_upper, bb_middle, bb_lower] = ta.bb(close, bb_length, bb_std)
bb_long_signal = ta.crossover(close, bb_lower) // Osto, kun hinta nousee alemman BB:n yli
bb_short_signal = ta.crossunder(close, bb_upper) // Myynti, kun hinta laskee ylemmän BB:n ali
// --- Kaupankäyntilogiikka ---
if (use_momentum and momentum_long_signal)
strategy.entry("Momentum Long", strategy.long)
if (use_momentum and momentum_short_signal)
strategy.entry("Momentum Short", strategy.short)
if (use_mean_reversion and bb_long_signal)
strategy.entry("BB Long", strategy.long)
if (use_mean_reversion and bb_short_signal)
strategy.entry("BB Short", strategy.short)