逆転変動 CAT戦略は,技術指標に基づく定量的な取引戦略である.この戦略は,MA,EMAおよび他の指標を通じて市場傾向とサポート/レジスタンスポジションを判断し,異常変動を決定するためにカスタムブラック・スワンとホワイト・スワン指標を組み合わせ,低価格で購入し高価格で販売するトレンド取引戦略を実装する.
逆転変動 CAT 戦略の核心論理は,MA や EMA などの技術指標を通じて全体的な傾向を判断し,その後,カスタムブラック・スワンとホワイト・スワン指標を使用して異常変動の機会を把握することです.具体的な原則は以下のとおりです.
SMA と EMA のような指標を使用して,全体的なトレンド方向を決定します.例えば,EMA144 が EMA169 を越えるのは上昇信号であり,EMA144 が EMA169 を越えるのは下落信号と考えられます.
カスタムブラック・スワン・インディケーターは (閉じる - 開く) /閉じる (Close - Open) と定義される.それはキャンドルスティックの異常変動の度合いを反映する.ブラック・スワン・インディケーターが限界値 (例えば0.0191) を超え,閉じる値がオープン値より低いとき,それはショートチャンスをもたらす下向きの異常変動を示す.
ホワイト・スワン・インディケーターは,ブラック・スワン・インディケーターに類似しており,また,キャンドルスタイクの異常変動の度合いを反映しています. ホワイト・スワン・インディケーターが
異常波動の機会を把握した後は EMA などの指標からの反転信号を待って ポジションを閉じて 低価格で購入し 高値で販売します
この戦略は,トレンドを決定するための移動平均値と異常を捕捉するためのカスタム指標の使用を組み合わせ,典型的な逆転取引の定量戦略を実装します.
逆転変動 CAT 戦略には以下の利点があります.
比較的高い勝利率を持つ異常変動をキャプチャする.ブラック・スワンとホワイト・スワン指標は異常な価格変動を効果的にキャプチャすることができます.これらの変動はしばしば逆転を意味し,取引の勝利率は高くなります.
決まったエントリーと出口ルールは,トレンドを盲目的に従うことを避ける.この戦略のエントリーと出口基準は非常に明確で,トレーダーによるランダムで感情的な操作を避けるのに役立ちます.
最適化および調整のための複数のパラメータおよび指標.例えばMAとEMAのサイクルパラメータ,ブラック・スワンとホワイト・スワン指標の
高周波および低周波取引に適用できる.この戦略はトレンドと逆転の両方を組み合わせ,高周波および低周波取引シナリオで使用するために異なる時間サイクルに設定することができます.
比較的完全なリスク管理措置.この戦略は,オーダー配達のための自己資本の割合を採用し,単一の取引損失を効果的に制御するためのストップ損失メカニズムも備えています.
逆転変動 CAT 戦略には,いくつかのリスクもあります. 主に:
パラメータ最適化リスク.ブラック・スワンやホワイト・スワンなどのパラメータの設定は,戦略のパフォーマンスに大きな影響を与えます.パラメータが正しく設定されていない場合,戦略の収益性が大幅に低下します.
引き下げリスク: 市場が長期にわたる一方的な傾向を示す場合,この戦略は一定の連続した損失とより大きな引き上げをもたらす可能性があります.
偽のブレイクリスク. 偽のブレイクは,短期的に現実に現れる. パラメータが敏感すぎると,不要な取引が多すぎる可能性があります.
上記のリスクに対応して,次の措置が可決されます.
パラメータ最適化メカニズムを確立し,合理的なパラメータ設定を確保するために厳格なバックテストと最適化のために歴史的なデータを使用します.
ストップ・ロスのメカニズムを設定する.合理的なストップ・ロスは,単一の取引損失と最大引き下げを効果的に制御することができます.
パラメータの感度調整. 誤ったブレイク干渉を避けるために特定のフィルタリング条件を追加することによって過度に敏感なパラメータ設定を避ける.
逆転変動 CAT 戦略も最適化のための大きな余地があります.主な最適化方向は以下の通りです.
異常変動をより正確かつ包括的に特定するために,異なるパラメータ組み合わせを設定することによって,黒天
機械学習アルゴリズムを増やし ニューラルネットワークやアンサンブル学習方法を活用して パラメータ構成を自動的に最適化し 戦略パラメータを動的に調整して 市場の変化に より良く適応できるようにします
ディープラーニング技術を使用して,チャートパターンを識別し,価格逆転信号を判断し,戦略のパフォーマンスを改善します.
パラメータの感度に対する曖昧な論理制御を追加し,トレンドが明らかになるとパラメータを安定させ,トレンドが逆転するときに傾き点でのパラメータの感度を増やす.
パラメータフリー遺伝子アルゴリズムやシミュレーションされたアニールなどのグローバル最適化方法を組み合わせることで,全体的なマルチパラメータ最適化を実現する.
取引の種類を拡大し 市場間仲介のために 株式や暗号通貨などの他の品種を増やします
システム的なモデルとパラメータの最適化によって,逆転変動 CAT 戦略の信頼性がさらに強化され,優れた取引結果が得られる.
逆転変動 CAT 戦略は,定量的な取引戦略で市場逆転を効果的に特定するために移動平均値とカスタム指標を組み合わせます.この戦略には,異常な変動,デフォルトのエントリー&エグジットルール,および大きな最適化空間などの利点があります.パラメータとモデル最適化によって効果はさらに強化できます.パラメータ最適化リスク,引き下げリスク,偽のブレイクアウトリスクなどのリスクから守らなければなりません.全体として,この戦略のアイデアは合理的で,良い実用性があります.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //适合1分钟-3分钟的k线,发生波动超过百分之二时,自动报警 strategy("BlackSwan strategy", overlay=true, initial_capital=10000, currency='USD', default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type= strategy.commission.percent, commission_value=0.075,pyramiding=3) //------------------------------------------- //------------------------------------------- timecondition = timeframe.period =="480" or timeframe.period =="240" or timeframe.period =="D" or timeframe.period =="720" // Make input options that configure backtest date range startDate = input(title="Start Date", type=input.integer, defval=1, minval=1, maxval=31) startMonth = input(title="Start Month", type=input.integer, defval=11, minval=1, maxval=12) startYear = input(title="Start Year", type=input.integer, defval=2018, minval=1800, maxval=2100) endDate = input(title="End Date", type=input.integer, defval=1, minval=1, maxval=31) endMonth = input(title="End Month", type=input.integer, defval=11, minval=1, maxval=12) endYear = input(title="End Year", type=input.integer, defval=2031, minval=1800, maxval=2100) // Look if the close time of the current bar // falls inside the date range inDateRange = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0)) and (time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0)) // Inputs a = input(1, title = "Key Vaule. 'This changes the sensitivity'") c = input(10, title = "ATR Period") h = input(false, title = "Signals from Heikin Ashi Candles") ma60 = sma(close,60) ema144 = ema(close,144) ema169 = ema(close,169) ma20=sma(close,20) plot(ema144,color=color.yellow, title="144") plot(ema169,color=color.orange, title="169") heitiane=(close-open) heitiane:=abs(heitiane) heitiane:=heitiane/close if (inDateRange and heitiane >0.0191 and close<open) // and close>f3 strategy.entry("botsell20", strategy.short, comment = "黑天鹅追空"+tostring(heitiane)) if(crossover(ema144,ema169)) strategy.close("botsell20", comment = "平空") if (inDateRange and heitiane >0.0191 and close>open) // and close>f3 strategy.entry("botbuy20", strategy.long, comment = "白天鹅追多"+tostring(heitiane)) if(crossunder(ema144,ema169)) strategy.close("botbuy20", comment = "平多")