تیز رفتار RSI پر مبنی رسک کنٹرول کمپاؤنڈ ٹریڈنگ حکمت عملی


تخلیق کی تاریخ: 2023-11-13 11:36:34 آخر میں ترمیم کریں: 2023-11-13 11:36:34
کاپی: 3 کلکس کی تعداد: 646
1
پر توجہ دیں
1617
پیروکار

تیز رفتار RSI پر مبنی رسک کنٹرول کمپاؤنڈ ٹریڈنگ حکمت عملی

جائزہ

یہ حکمت عملی فوری طور پر ٹریڈنگ پلیٹ فارم BitMEX کے لئے ڈیزائن کی گئی ہے ، جس میں تیزی سے آر ایس آئی اشارے کا تجزیہ کیا گیا ہے ، جس میں متعدد تکنیکی اشارے کے ساتھ مل کر سگنل کو فلٹر کیا گیا ہے ، جس میں اعلی کارکردگی کا رجحان ٹریکنگ حاصل کیا جاسکتا ہے۔ حکمت عملی میں فنڈ مینجمنٹ ، اسٹاپ نقصان کا طریقہ کار بھی ترتیب دیا گیا ہے ، جو تجارت کے خطرے کو مؤثر طریقے سے کنٹرول کرسکتا ہے۔

حکمت عملی کا اصول

  1. فوری RSI کا حساب لگائیں ، پیرامیٹرز کو 7 دن کی لائن ، اوور بائی لائن 25 ، اوور سیل لائن 75 کے طور پر ترتیب دیں۔ جب RSI پر اوور بائی لائن کو پار کیا جائے تو یہ ایک اوور خرید سگنل ہے۔ جب RSI نیچے اوور سیل لائن کو پار کیا جائے تو یہ ایک اوور سیل سگنل ہے۔

  2. K لائن اداروں کے لئے فلٹرنگ سیٹ کریں۔ اس کی ضرورت ہے کہ کھولی ہوئی ڈسک نائن لائن ہو ، جس کی لمبائی کل اوسط اداروں سے کم نہ ہو 20٪

  3. K لائن رنگ کی ترتیب فلٹرنگ کی ضرورت ہوتی ہے کہ حالیہ 4K کو سینیٹ کے طور پر خالی کر دیا جائے ، حالیہ 4K کو سورج کے طور پر زیادہ سے زیادہ

  4. اسٹاپ نقصان کی منطق ترتیب دیں۔ جب قیمت منفی سمت میں چلتی ہے تو ، کھلنے والی پوزیشن کو روکیں۔

  5. ریبوٹ انسداد میکانیزم ترتیب دیں۔ جب قیمت منافع بخش سمت میں منتقل ہوتی ہے تو اسٹاپ نقصان کی لائن تک پہنچ جاتی ہے ، پھر اسٹاپ لگانے کے لئے ایک بار پھر سگنل دیا جاتا ہے۔

  6. فنڈ مینجمنٹ قائم کریں۔ فکسڈ فنڈز کا فیصد استعمال کرتے ہوئے ذخیرہ اندوزی کریں ، ہر نقصان میں ایک ڈبل پوزیشن۔

طاقت کا تجزیہ

  1. تیز آر ایس آئی پیرامیٹرز کی ترتیب معقول ہے ، جو رجحان کو تیزی سے پکڑ سکتا ہے۔ K لائن ہستی اور رنگین فیصلے کے ساتھ مل کر ، جعلی توڑ کو مؤثر طریقے سے فلٹر کیا جاسکتا ہے۔

  2. ایک بار جب آپ نے یہ کام کیا ہے تو ، آپ کو اس کے بارے میں مزید معلومات حاصل کرنے کی ضرورت ہے۔

  3. حکمت عملی میں بلٹ ان اسٹاپ نقصان کا طریقہ کار ہے ، جس سے انفرادی نقصان کو مؤثر طریقے سے کنٹرول کیا جاسکتا ہے۔

  4. متحرک پوزیشن ایڈجسٹمنٹ کا استعمال کرتے ہوئے ، اعتدال پسند سخت پیسے کے انتظام کو یقینی بنائیں۔

  5. اہم واقعات کی وجہ سے آنے والی ہلچل سے بچنے کے لئے اپنی مرضی کے مطابق ٹرانزیکشن کا وقت طے کریں۔

خطرہ اور اصلاح

  1. بہت تیز رفتار سے تجارت کے مواقع ضائع ہوسکتے ہیں۔ مناسب طریقے سے پیرامیٹرز کو نرمی دی جاسکتی ہے ، جس سے لچک میں اضافہ ہوتا ہے۔

  2. رجحان کے اختتام کا مؤثر اندازہ لگانا ناممکن ہے۔ ممکنہ الٹ کو دوسرے اشارے کے ساتھ مل کر سمجھا جاسکتا ہے۔

  3. پوزیشن ایڈجسٹمنٹ کا طریقہ بہت زیادہ جارحانہ ہے ، لاک پوزیشن کا طریقہ متعارف کرایا جاسکتا ہے۔

  4. مختلف مارکیٹوں کے مطابق پیرامیٹرز کو ایڈجسٹ کرنے کے لئے، زیادہ سے زیادہ پیرامیٹرز کا مجموعہ حاصل کریں.

خلاصہ کریں۔

یہ حکمت عملی مجموعی طور پر کافی مستحکم ہے ، تیزی سے آر ایس آئی کے ذریعہ رجحان کی سمت کا تعین کرنے کے لئے ، پھر متعدد تکنیکی اشارے فلٹرنگ سگنل کے ساتھ مل کر ، اس رجحان میں بہتر منافع حاصل کیا جاسکتا ہے۔ اس حکمت عملی میں ایک خاص حد تک اصلاح کی گنجائش ہے ، جس میں پیرامیٹرز کے مجموعے کو ایڈجسٹ کرکے مختلف مارکیٹ کے ماحول کے مطابق ڈھال لیا جاسکتا ہے ، جس میں مضبوط عملی صلاحیت ہے۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-12 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Robot BitMEX Fast RSI v1.0", shorttitle = "Robot BitMEX Fast RSI v1.0", overlay = false, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 10)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
usemar = input(true, defval = true, title = "Use Martingale")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
rsiperiod = input(7, defval = 7, minval = 2, maxval = 100, title = "RSI Period")
rsilimit = input(25, defval = 25, minval = 1, maxval = 30, title = "RSI limit")
rsibars = input(1, defval = 1, minval = 1, maxval = 20, title = "RSI Bars")
useocf = input(true, defval = true, title = "Use Open Color Filter")
useccf = input(true, defval = true, title = "Use Close Color Filter")
openbars = input(4, defval = 4, minval = 1, maxval = 20, title = "Open Color Bars")
closebars = input(1, defval = 1, minval = 1, maxval = 20, title = "Close Color Bars")
useobf = input(true, defval = true, title = "Use Open Body Filter")
usecbf = input(true, defval = true, title = "Use Close Body Filter")
openbody = input(20, defval = 20, minval = 0, maxval = 1000, title = "Open Body Minimum, %")
closebody = input(50, defval = 50, minval = 0, maxval = 1000, title = "Close Body Minimum, %")
usecnf = input(true, defval = true, title = "Use Close Norma Filter")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day")

//RSI
uprsi = rma(max(change(close), 0), rsiperiod)
dnrsi = rma(-min(change(close), 0), rsiperiod)
rsi = dnrsi == 0 ? 100 : uprsi == 0 ? 0 : 100 - (100 / (1 + uprsi / dnrsi))
uplimit = 100 - rsilimit
dnlimit = rsilimit
rsidn = rsi < dnlimit ? 1 : 0
rsiup = rsi > uplimit ? 1 : 0
rsidnok = sma(rsidn, rsibars) == 1
rsiupok = sma(rsiup, rsibars) == 1

//Body Filter
body = abs(close - open)
abody = sma(body, 10)
openbodyok = body >= abody / 100 * openbody or useobf == false
closebodyok = body >= abody / 100 * closebody or usecbf == false

//Color Filter
bar = close > open ? 1 : close < open ? -1 : 0
gbar = bar == 1 ? 1 : 0
rbar = bar == -1 ? 1 : 0
opengbarok = sma(gbar, openbars) == 1 or useocf == false
openrbarok = sma(rbar, openbars) == 1 or useocf == false
closebarok = (strategy.position_size > 0 and bar == 1) or (strategy.position_size < 0 and bar == -1) or useccf == false

//Norma Filter
norma = (rsi > dnlimit and rsi < uplimit) or usecnf == false

//Signals
up = openrbarok and rsidnok and openbodyok and (strategy.position_size == 0 or close < strategy.position_avg_price)
dn = opengbarok and rsiupok and openbodyok and (strategy.position_size == 0 or close > strategy.position_avg_price)
exit = ((strategy.position_size > 0 and closebarok and norma) or (strategy.position_size < 0 and closebarok and norma)) and closebodyok

//Indicator
plot(rsi, color = blue, linewidth = 3, title = "Double RSI")
plot(uplimit, color = black, title = "Upper Line")
plot(dnlimit, color = black, title = "Lower Line")
colbg = rsi > uplimit ? red : rsi < dnlimit ? lime : na
bgcolor(colbg, transp = 20)

//Trading
profit = exit ? ((strategy.position_size > 0 and close > strategy.position_avg_price) or (strategy.position_size < 0 and close < strategy.position_avg_price)) ? 1 : -1 : profit[1]
mult = usemar ? exit ? profit == -1 ? mult[1] * 2 : 1 : mult[1] : 1
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 * mult : lot[1]

if up
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

if dn
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
    strategy.close_all()