と金の取引戦略

作者: リン・ハーンチャオチャン,日付: 2024-02-02 14:46:11
タグ:

金叉死叉量化交易策略

概要

この戦略は,XAUUSD (黄金) の30日シンプル移動平均線 (MA30) と200日シンプル移動平均線 (MA200) の交差状況を計算することによって,金フォークの買取と死フォークの売却を量化する取引を実現する.この戦略は,ストップ損失とストップ価格を同時に設定し,自動的に平衡することができます.

戦略の原理

この戦略の核心指標はMA30とMA200である.MA30がMA200を通過すると買い信号が発生し,MA30がMA200を通過すると売り信号が発生する.この交差は金フォークと死フォークと呼ばれる.

具体的には,TA库でMA30とMA200を計算し,ta.crossoverとta.crossunder関数でそれらの交差値を判断する.上向き交差 (金) のとき,longCondition値をtrueに設定し,買い操作を行う.下向き交差 (死) のとき,shortCondition値をtrueに設定し,売り操作を行う.

取引実行では,買いと売りの注文はそれぞれ4万ポイントのストップ損失とストップ損失を設定します.これはXAUUSDの4000ポイントの価格変化に相当します.価格がストップ損失またはストップ損失を誘発すると,注文は自動的に平衡します.

さらに,戦略は,ヘッジメカニズムを設定している.現在,多頭ポジションを保有している場合,死叉信号が続く場合,直接平衡に切り替える.現在,空頭ポジションを保有している場合,金叉信号が続く場合,直接平衡に切り替える.これは,トレンド逆転時に大きな損失を免れる.

戦略的優位性

この戦略は,非常にシンプルで直感的なトレンド追跡戦略です.

  1. ルールが明確で,実行が簡単です.
  2. 複数のタイムサイクルで使用可能で,昼間および長距離操作に適しています.
  3. 市場が周期的に動いており,トレンドの逆転を捉えることができる.
  4. 停止損失を抑制する自動退出メカニズムを設定し,単一の損失を制御します.
  5. 金融危機は,金融危機がもたらす損失を回避するために,ヘッジメカニズムを構築する.

リスク分析

この戦略にはいくつかのリスクもあります:

  1. MA指標は遅滞しており,短期トレンド逆転の最適なエントリータイミングを逃す可能性があります.
  2. ストップダメージの価格が不合理に設定され,早めにストップダメージが出場する可能性があります.
  3. 逆信号の干渉が多すぎて,無意味な取引が増える.
  4. この戦略には,取引資金の規模にも一定の要求があり,一定の撤回を受けなければならない.

これらのリスクを制御するために,パラメータを最適化し,停止損失幅を調整し,反転信号をフィルタリングなどを行うことができます.

戦略の最適化

この戦略は,以下のいくつかの点で最適化することができます:

  1. MAパラメータを最適化し,EMAまたは重度の移動平均線に変更します.
  2. 取引量,振動指標など,他の指標のフィルターを追加します.
  3. 防護メカニズムは,顕著な信号の場合のみ有効にします.
  4. ポジションのサイズと管理を設定して,資金利用効率を最適化できます.
  5. 機械学習アルゴリズムと組み合わせて動的最適化ストップ損失停止設定ができます.

パラメータ調整,フィルター追加,ポジション管理などの手段により,戦略の安定性をさらに高めることができます.

概要

この戦略は,シンプルで実用的な移動平均交差戦略である.市場サイクルに沿って動作し,自動停止損損平衡とヘッジメカニズムを設定することでリスクを制御する.この戦略は,理解し実行しやすく,さまざまな取引種と時間周期に適用できる.さらに最適化することで,よりよいリスク・リターン比を得ることができる.これは推奨される量的な取引戦略である.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Estrategia de Cruce de Medias Móviles", overlay=true)

// Medias móviles
ma30 = ta.sma(close, 30)
ma60 = ta.sma(close, 60)
ma200 = ta.sma(close, 200)

// Cruce de medias móviles
crossoverUp = ta.crossover(ma30, ma200)
crossoverDown = ta.crossunder(ma30, ma200)

// Señales de compra y venta
longCondition = crossoverUp
shortCondition = crossoverDown

// Ejecución de órdenes
if (longCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Cover", "Buy", stop=close - 40.000, limit=close + 40.000)
if (shortCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Cover", "Sell", stop=close + 40.000, limit=close - 40.000)

// Plot de las medias móviles
plot(ma30, color=color.blue, title="MA 30")
plot(ma60, color=color.orange, title="MA 60")
plot(ma200, color=color.green, title="MA 200")

// Condiciones para cerrar la posición contraria
if (strategy.position_size > 0)
    if (crossoverDown)
        strategy.close("Buy")
if (strategy.position_size < 0)
    if (crossoverUp)
        strategy.close("Sell")

もっと見る