تیزی سے RSI رسک کنٹرول مرکب فیوچر ٹریڈنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-13 11:36:34
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

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

  2. شمعدان کے جسم پر فلٹر سیٹ کریں۔ جسم کی لمبائی کل کی اوسط جسم کی لمبائی کے 20 فیصد سے کم نہیں ہونے والی کمرشل موم بتی کے طور پر کھولنے کی ضرورت ہے۔

  3. موم بتیوں کے رنگ پر فلٹر سیٹ کریں۔ شارٹ جانے پر آخری 4 موم بتیوں کو bearish کے طور پر ، اور طویل جانے پر آخری 4 موم بتیوں کو bullish کے طور پر کی ضرورت ہے۔

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

  5. اینٹی وِپسا میکانزم سیٹ کریں۔ ابتدائی حرکت کے بعد نقصان کی سطح کو روکنے کے لیے صرف اس وقت سگنل لیں جب قیمت بحال ہو۔

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

فوائد کا تجزیہ

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

  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()

مزید