Strategi Trading Posisi Bitcoin Futures

Penulis:ChaoZhang, Tanggal: 2024-01-26 15:01:24
Tag:

img

Gambaran umum: Strategi ini menggunakan data posisi berjangka bitcoin BitMEX untuk membimbing perdagangan. Ini pergi pendek ketika posisi pendek meningkat dan pergi panjang ketika posisi pendek menurun. Cocok untuk mengikuti perilaku perdagangan smart money.

Logika Strategi:

  1. Penggunaan posisi pendek berjangka bitcoin BitMEX sebagai indikator. BitMEX dianggap didominasi oleh institusi dan uang pintar.
  2. Ketika posisi pendek meningkat, pergi pendek di BTC spot.
  3. Ketika posisi pendek menurun, pergi panjang di BTC spot. Lembaga mengurangi pendek, menunjukkan sentimen bullish.
  4. Gunakan indikator RSI untuk mendeteksi puncak dan terowongan dalam posisi pendek.
  5. Masukkan posisi panjang/pendek pada sinyal puncak/rendah.

Analisis Keuntungan:

  1. Menggunakan data posisi dari pedagang BitMEX profesional, menangkap aktivitas institusional.
  2. RSI membantu menentukan puncak/rendah, mengendalikan risiko perdagangan.
  3. Pemantauan gerakan institusional secara real time untuk menyesuaikan posisi sendiri sesuai.
  4. Tidak perlu menganalisis grafik, langsung ikuti pemikiran "uang pintar".
  5. Hasil backtest terlihat layak, hasil yang terhormat.

Analisis Risiko:

  1. Tidak bisa mengatakan apakah kenaikan celana pendek adalah spekulatif atau lindung nilai.
  2. Data BitMEX memiliki lag, mungkin melewatkan harga masuk terbaik.
  3. Lembaga tidak 100% benar, kegagalan terjadi.
  4. Penyesuaian parameter RSI yang buruk menyebabkan sinyal palsu atau sinyal yang hilang.
  5. Stop loss terlalu longgar, kerugian tunggal bisa sangat besar.

Arahan Optimasi:

  1. Mengoptimalkan parameter RSI, menguji periode tunggu yang berbeda.
  2. Cobalah indikator lain seperti KD, MACD untuk mendeteksi puncak / terendah.
  3. Stop loss yang lebih ketat untuk membatasi kerugian tunggal.
  4. Tambahkan kondisi keluar seperti pembalikan tren, pemutus dll.
  5. Uji kelayakan untuk koin lain, misalnya mengikuti BTC short untuk perdagangan ETH.

Ringkasan:
Strategi ini memanfaatkan pedagang berjangka bitcoin profesional BitMEX untuk mendapatkan sinyal tepat waktu. Ini membantu investor mengukur sentimen pasar dan melihat titik tinggi / rendah. Juga memperingatkan risiko penurunan ketika paus sangat pendek. Secara keseluruhan pendekatan yang menarik menggunakan data posisi berjangka, tetapi penyempurnaan lebih lanjut dalam parameter dan kontrol risiko diperlukan sebelum menyebarkan langsung.


/*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)

Lebih banyak