یہ حکمت عملی اسپاٹ ٹریڈنگ پلیٹ فارم بٹ ایم ای ایکس کے لئے ڈیزائن کی گئی ہے۔ فاسٹ آر ایس آئی اشارے کا تجزیہ کرکے اور متعدد تکنیکی اشارے کو اسکرین سگنلز میں جوڑ کر ، یہ موثر ٹرینڈ ٹریکنگ ٹریڈنگ کا احساس کرتا ہے۔ یہ حکمت عملی تجارتی خطرات کو مؤثر طریقے سے کنٹرول کرنے کے لئے رسک مینجمنٹ اور اسٹاپ نقصان کے طریقہ کار کو بھی طے کرتی ہے۔
7 دن کے پیرامیٹرز اور اوور بُک لائن 25 ، اوور سیل لائن 75 کے ساتھ فاسٹ آر ایس آئی کا حساب لگائیں۔ جب آر ایس آئی اوور بُک لائن سے تجاوز کرتا ہے تو ، یہ اوور بُک سگنل ہے۔ جب آر ایس آئی اوور سیل لائن سے نیچے عبور کرتا ہے تو ، یہ اوور سیل سگنل ہے۔
شمعدان کے جسم پر فلٹر سیٹ کریں۔ جسم کی لمبائی کل کی اوسط جسم کی لمبائی کے 20 فیصد سے کم نہیں ہونے والی کمرشل موم بتی کے طور پر کھولنے کی ضرورت ہے۔
موم بتیوں کے رنگ پر فلٹر سیٹ کریں۔ شارٹ جانے پر آخری 4 موم بتیوں کو bearish کے طور پر ، اور طویل جانے پر آخری 4 موم بتیوں کو bullish کے طور پر کی ضرورت ہے۔
سٹاپ نقصان منطق مقرر کریں. جب قیمت منفی سمت میں چلتی ہے تو پوزیشن بند کریں.
اینٹی وِپسا میکانزم سیٹ کریں۔ ابتدائی حرکت کے بعد نقصان کی سطح کو روکنے کے لیے صرف اس وقت سگنل لیں جب قیمت بحال ہو۔
پوزیشن کا سائز مقرر کریں۔ ہر تجارت کے لئے سرمایہ کا مقررہ فیصد استعمال کریں، اور ہر نقصان کے بعد پوزیشن کا سائز دوگنا کریں۔
فاسٹ آر ایس آئی پیرامیٹرز معقول حد تک مقرر کیے گئے ہیں جو تیزی سے رجحانات کو پکڑ سکتے ہیں۔ موم بتی کے جسم اور رنگ فلٹرز کے ساتھ مل کر غلط بریک آؤٹ کو مؤثر طریقے سے روک سکتا ہے۔
کثیر پرت فلٹر تجارت کی تعداد کو کم کرکے جیت کی شرح میں اضافہ کرتا ہے۔
اسٹاپ نقصان کے اندرونی میکانزم کی طرف سے تجارت کے نقصان کی حد.
متحرک پوزیشن سائزنگ معتدل جارحانہ سرمایہ انتظام کا احساس کرتی ہے۔
اپنی مرضی کے مطابق ٹریڈنگ ٹائم فریم بڑے واقعات سے شور سے بچتا ہے.
تیز رفتار کچھ تجارتی مواقع کو کھو سکتی ہے۔ زیادہ لچک کے لئے پیرامیٹرز کو نرم کر سکتی ہے۔
رجحان کے اختتام کا تعین کرنا مشکل ہے۔ ممکنہ الٹ پھیر کا پتہ لگانے کے لئے دوسرے اشارے کے ساتھ مل کر غور کریں۔
پوزیشن سائزنگ کا طریقہ بہت جارحانہ، مقفل پوزیشن طریقہ متعارف کرانے کر سکتے ہیں.
بہتر پیرامیٹر مجموعے تلاش کرنے کے لئے مختلف مارکیٹوں کے لئے پیرامیٹرز کو بہتر بنا سکتے ہیں.
مجموعی طور پر یہ حکمت عملی کافی مضبوط ہے۔ تیز رفتار آر ایس آئی کے ساتھ رجحان کی سمت کا فیصلہ کرنے اور متعدد اشارے کے ساتھ سگنل فلٹر کرنے سے ، یہ رجحانات کے دوران اچھی واپسی حاصل کرسکتا ہے۔ نیز حکمت عملی میں اصلاح کی گنجائش ہے۔ پیرامیٹر کے مجموعوں کو ایڈجسٹ کرکے یہ مختلف مارکیٹ کے ماحول کے مطابق ڈھال سکتا ہے ، اس طرح اچھی عملی ہے۔
/*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()