یہ ایس ایس ایل چینل اشارے پر مبنی رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ مستحکم سرمایہ کی ترقی کے ل prof منافع کو مقفل کرنے کے لئے نقصان کو روکنے اور منافع کا انتظام کرنے کو شامل کرتی ہے۔
کوڈ کا بنیادی منطق یہ ہے کہ رجحان کی سمت کا تعین کرنے کے لئے ایس ایس ایل کے اوپری اور نچلے بینڈ کی سنہری صلیب کا استعمال کریں۔ خاص طور پر ، جب ایس ایس ایل کا اوپری بینڈ نیچے سے ایس ایس ایل کے نچلے بینڈ کے اوپر سے گزرتا ہے تو طویل ہوجائیں ، اور جب ایس ایس ایل کا نچلا بینڈ اوپر سے ایس ایس ایل کے اوپری بینڈ کے نیچے سے گزرتا ہے تو مختصر ہوجائیں۔
کسی پوزیشن میں داخل ہونے کے بعد ، حکمت عملی اسٹاپ نقصان اور منافع لینے کی قیمتوں کو ترتیب دینے کے لئے ATR کو ضرب کرنے کے لئے ایک گتانک کا استعمال کرے گی۔ مثال کے طور پر ، اسٹاپ نقصان کی قیمت قیمت مائنس ATR * 1.5 ہے اور منافع لینے کی قیمت قیمت پلس ATR * 1 ہے۔ اس سے مؤثر طریقے سے واحد نقصان پر قابو پایا جاسکتا ہے اور منافع میں تالا لگا جاسکتا ہے۔
جب ایس ایس ایل چینل عبور کرتا ہے تو ، پوزیشن کو بند کردیں۔ یہ بروقت اسٹاپ نقصانات کے ل the رجحان میں موڑ کے مقامات کو ٹریک کرسکتا ہے۔
متعلقہ حل:
اس حکمت عملی کا مجموعی منطق واضح ہے ، رجحان کا تعین کرنے کے لئے ایس ایس ایل چینل کا استعمال کرتے ہوئے ، اور معقول اسٹاپ نقصان اور منافع حاصل کریں۔ لیکن غلط سگنل کو فلٹر کرنے اور بہترین پیرامیٹر امتزاج تلاش کرنے کے لئے دیگر اشارے کو شامل کرکے ، مزید جانچ اور اصلاح کی ضرورت ہے۔ اسی وقت ، پیرامیٹرز کو مختلف مارکیٹوں کے مطابق ایڈجسٹ کیا جانا چاہئے تاکہ حکمت عملی کو زیادہ لچکدار بنایا جاسکے۔ مجموعی طور پر ، یہ حکمت عملی مستحکم آمدنی حاصل کرنے کے لئے ایک قابل اعتماد فریم ورک فراہم کرتی ہے۔
/*backtest start: 2022-11-26 00:00:00 end: 2023-05-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Designed per No Nonsense Forex VP rules //For testing your individual indicators before the full system //Originated from causecelebre //Tried to put in as much VP rules as possible /////////////////////////////////////////////////// //Rules Implemented: /////////////////////////////////////////////////// // - SL 1.5 x ATR // - TP 1 x ATR // // - Entry conditions //// - Entry from 1 x confirmation // - Exit conditions //// - Exit on confirmation flip /////////////////////////////////////////////////// //Trades entries /////////////////////////////////////////////////// // - First entry L1 or S1 with standard SL and TP /////////////////////////////////////////////////// //Included Indicators and settings /////////////////////////////////////////////////// // - Confirmtion = SSL 10 /////////////////////////////////////////////////// //Credits // Strategy causecelebre https://www.tradingview.com/u/causecelebre/ // SSL Channel ErwinBeckers https://www.tradingview.com/u/ErwinBeckers/ ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Change log //First release. Testing of indicators ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// strategy(title="NNFX Strategy Indicator | jh", overlay = true ) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // **** Set the main stuff **** /////////////////////////////////////////////////// //Price price = close ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // ATR stuff /////////////////////////////////////////////////// slMultiplier = input(1.5, "SL") tpMultiplier = input(1, "TP") atrlength = input(title="ATR Length", defval=14, minval=1) atrsmoothing = input(title="Smoothing", defval="SMA", options=["RMA", "SMA", "EMA", "WMA"]) ma_function(source, atrlength) => if atrsmoothing == "RMA" rma(source, atrlength) else if atrsmoothing == "SMA" sma(source, atrlength) else if atrsmoothing == "EMA" ema(source, atrlength) else wma(source, atrlength) //plot(ma_function(tr(true), atrlength), title = "ATR", color=#991515, transp=0) atr = ma_function(tr(true), atrlength) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // **** Confirmation **** /////////////////////////////////////////////////// ssllen=input(title="SSL Length Period", defval=10) smaHigh=sma(high, ssllen) smaLow=sma(low, ssllen) Hlv = na Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1] sslDown = Hlv < 0 ? smaHigh: smaLow sslUp = Hlv < 0 ? smaLow : smaHigh plot(sslDown, "SSL Down", linewidth=1, color=red) plot(sslUp, "SSL Up", linewidth=1, color=lime) /////////////////////////////////////////////////// //Confirm Signals /////////////////////////////////////////////////// c_Up = sslUp c_Down = sslDown //Signals based on crossover c_Long = crossover(c_Up, c_Down) c_Short = crossover(c_Down, c_Up) //Signals based on signal position trendLong = c_Up > c_Down ? 1 : 0 trendShort = c_Down > c_Up ? 1 : 0 confirmLong = c_Long confirmShort = c_Short plotshape(trendLong, color = green, style=shape.triangleup, location=location.bottom) plotshape(trendShort, color = red, style=shape.triangledown, location=location.bottom) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Entries and Exits ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (year>2009) //Long entries with standard 1.5 ATR for SL, 1 ATR for TP long_sl = price - (atr * slMultiplier) long_tp = price + (atr * tpMultiplier) strategy.order("L1", strategy.long, when = confirmLong) strategy.close("L1", when = confirmShort) strategy.exit("L Limit Exit", "L1", stop = long_sl, limit = long_tp) //Short entries with standard 1.5 ATR for SL, 1 ATR for TP short_sl = price + (atr * slMultiplier) short_tp = price - (atr * tpMultiplier) strategy.order("S1", strategy.short, when = confirmShort) strategy.close("S1", when = confirmLong) strategy.exit("S Limit Exit", "S1", stop = short_sl, limit = short_tp) ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //End //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////