ビットコイン・フューチャー・ポジション・トレーディング・戦略

作者: リン・ハーンチャオチャン,日付: 2024-01-26 15:01:24
タグ:

img

概要:この戦略は,取引を導くためにBitMEXビットコイン先物ポジションデータを使用する.ショートポジションが増加するとショートになり,ショートポジションが減少するとロングする. スマートマネー取引行動に従うのに適している.

戦略論理:

  1. BitMEXのビットコイン先物ショートポジションを指標として使用する. BitMEXは,機関と"スマートマネー"が支配されていると考えられています.
  2. ショートポジションが増加すると,BTCのスポットにショートします. 機関がショートポジションに追加しています.
  3. ショートポジションが下がると,BTCのスポットでロングする.機関がショートを取っているのは,上昇傾向を示している.
  4. ショートポジションのピークとドロップを検出するために RSI インジケーターを使用します.75以上のRSIはピーク信号で,30以下のドロップ信号です.
  5. トップ/ドローシグナルでロング/ショートポジションを入力します.

利点分析:

  1. プロのBitMEXトレーダーからの位置データを利用し 機関活動を記録します
  2. RSIはピーク/ドローを決定し,取引リスクを制御します.
  3. 制度の動きをリアルタイムで監視し,それに従って自己の立場を調整する.
  4. "スマートマネー"の考え方に従ってください
  5. バックテストの結果は 立派で 立派な結果だ

リスク分析:

  1. ショートショーツの増加は 憶測かヘッジなのかは 分かりませんが 慎重に観察する必要があります
  2. BitMEXのデータには遅れがあり 最良エントリー価格を見逃す可能性があります
  3. 制度は100%正しくありません 失敗は起こるのです
  4. RSI パラメーターの調節が不十分で 誤った信号や信号が欠落します
  5. ストップ損失が緩すぎると 損失は莫大なものになります

オプティマイゼーション方向:

  1. RSIのパラメータを最適化し 異なる保持期間をテストします
  2. 他の指標,KD,MACDを試してピーク/ドロップを検出してください.
  3. ストップ損失を絞る
  4. トレンド逆転,ブレイカーなど退出条件を追加します
  5. 他のコインへの適用性をテストします.例えば,ETHの取引に BTCのショートフォローをします.

概要:
この戦略は,BitMEXのプロのビットコイン先物トレーダーにタイムリーなシグナルを得るために活用される.投資家が市場情勢を測定し,高値/低値を見出すのに役立ちます.また,クジラが非常に短値であるときに下向きのリスクも警告します.全体的に,先物ポジションデータを活用した興味深いアプローチですが,ライブ展開する前にパラメータとリスク管理のさらなる精製が必要です.


/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bitfinex Shorts Strat", 
     overlay=true,
     default_qty_type=strategy.percent_of_equity,
     default_qty_value=10, precision=2, initial_capital=1000,
     pyramiding=2,
     commission_value=0.05)

//Backtest date range
StartDate = input(timestamp("01 Jan 2021"), title="Start Date")
EndDate = input(timestamp("01 Jan 2024"), title="Start Date")
inDateRange = true

symbolInput = input(title="Bitfinex Short Symbol", defval="BTC_USDT:swap")
Shorts = request.security(symbolInput, "", open)

// RSI Input Settings
length = input(title="Length", defval=7, group="RSI Settings" )
overSold = input(title="High Shorts Threshold", defval=75, group="RSI Settings" )
overBought = input(title="Low Shorts Threshold", defval=30, group="RSI Settings" )

// Calculating RSI
vrsi = ta.rsi(Shorts, length)
RSIunder = ta.crossover(vrsi, overSold)
RSIover = ta.crossunder(vrsi, overBought)

// Stop Loss Input Settings
longLossPerc = input.float(title="Long Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01
shortLossPerc = input.float(title="Short Stop Loss (%)", defval=25, group="Stop Loss Settings") * 0.01

// Calculating Stop Loss
longStopPrice  = strategy.position_avg_price * (1 - longLossPerc)
shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc)

// Strategy Entry
if (not na(vrsi))
	if (inDateRange and RSIover)
		strategy.entry("LONG", strategy.long, comment="LONG")
	if (inDateRange and RSIunder)
		strategy.entry("SHORT", strategy.short, comment="SHORT")

// Submit exit orders based on calculated stop loss price
if (strategy.position_size > 0)
    strategy.exit(id="LONG STOP", stop=longStopPrice)
if (strategy.position_size < 0)
    strategy.exit(id="SHORT STOP", stop=shortStopPrice)

もっと