Menyediakan strategi leverage dalam skrip Pine


Tarikh penciptaan: 2023-12-29 10:46:35 Akhirnya diubah suai: 2023-12-29 10:46:35
Salin: 0 Bilangan klik: 1170
1
fokus pada
1621
Pengikut

Menyediakan strategi leverage dalam skrip Pine

Gambaran keseluruhan

Strategi ini bertujuan untuk menyelesaikan masalah yang tidak dapat menetapkan leverage semasa pengembalian skrip Pine, untuk mencapai keuntungan leverage. Strategi ini dibuat dengan mengira hak dan faedah strategi, kelipatan leverage yang ditetapkan dan harga penutupan, dan secara dinamik mengira jumlah tangan yang dibuka.

Prinsip Strategi

  1. Tetapan ketepatan Precision, mengawal ketepatan bilangan penjaga
  2. Tetapkan leverage multiplier, 1 kali ganda secara lalai
  3. Kira jumlah pemain yang membuka kedudukan:Lev = math.max(math.round(strategy.equity * leverage / close), 0)Ia perlu diimbangi dengan kepentingan dan leverage.
  4. Kemasukan: Tambah apabila RSI menembusi 30 dari paras rendah ke atas; Tambah apabila RSI menembusi 70 dari paras tinggi ke bawah
  5. Pesanan Lev mengikut bilangan tangan yang dikira

Analisis kelebihan

  1. Menyelesaikan masalah skrip Pine yang tidak dapat menetapkan tuas
  2. Perubahan hak dan kepentingan berbanding lurus dengan jumlah pelabur, menghasilkan keuntungan dengan menggunakan leverage
  3. RSI filtered, mengelakkan perdagangan sia-sia
  4. Precision boleh disesuaikan untuk memenuhi keperluan yang berbeza

Analisis risiko

  1. Leverage terlalu tinggi boleh menyebabkan kerugian.
  2. Pengaturan Leverage, Penempatan, dan Pengendalian Risiko

Arah pengoptimuman

  1. Boleh menguji kestabilan di bawah parameter yang berbeza
  2. Ia boleh digabungkan dengan strategi hentikan kerugian untuk mengawal risiko lebih jauh
  3. Model pelbagai faktor boleh dipertimbangkan untuk meningkatkan keberkesanan strategi

ringkaskan

Strategi ini mewujudkan tetapan leverage dalam skrip Pine, menyelesaikan masalah yang tidak dapat disimulasikan oleh pengujian semula, mengira jumlah pembuka kedudukan yang berkaitan dengan hak dan kepentingan, menyelesaikan pengembalian leverage. Strategi ini mudah dan berkesan, dapat dioptimumkan lebih lanjut, dan patut dipelajari.

Kod sumber strategi
/*backtest
start: 2022-12-22 00:00:00
end: 2023-12-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © RingsCherrY

//@version=5
strategy("How to use Leverage in PineScript", overlay=true, pyramiding=1, initial_capital=1000000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.04)

//////////////////////////////////////////
////////////////Indicators////////////////
//////////////////////////////////////////

length = input( 14 )
overSold = input( 30 )
overBought = input( 70 )
price = close
vrsi = ta.rsi(price, length)
co = ta.crossover(vrsi, overSold)
cu = ta.crossunder(vrsi, overBought)

//////////////////////////////////////////
/////////////////Leverage/////////////////
//////////////////////////////////////////


//The number of decimal places for each position opening, i.e., the accuracy
precision = input.int(1,title='Precision')

//Leverage, the default is 1, here is not recommended to open a high leverage

leverage = input.int(1,title='Leverage',minval = 1, maxval = 100 ,step = 1)

//Calculate the number of open contracts, here using equity for calculation, considering that everyone compound interest is used for trading equity
Lev = math.max(math.round(strategy.equity * leverage  / close , precision), 0)

if (not na(vrsi))
	if (co)
		strategy.entry("RsiLE", strategy.long,qty = Lev, comment="RsiLE")
	if (cu)
		strategy.entry("RsiSE", strategy.short,qty = Lev, comment="RsiSE")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)