এটি এসএসএল চ্যানেল সূচকের উপর ভিত্তি করে একটি প্রবণতা অনুসরণকারী কৌশল। এটি স্থিতিশীল মূলধন বৃদ্ধির জন্য মুনাফা লক করার জন্য স্টপ লস এবং লাভ ব্যবস্থাপনা গ্রহণ করে।
কোডের মূল যুক্তি হল এসএসএল উপরের এবং নীচের ব্যান্ডের সোনার ক্রস ব্যবহার করে প্রবণতার দিকনির্দেশ নির্ধারণ করা। বিশেষত, এসএসএল উপরের ব্যান্ড নীচের থেকে এসএসএল নীচের ব্যান্ডের উপরে অতিক্রম করলে দীর্ঘ যান এবং এসএসএল নিম্ন ব্যান্ড উপরে থেকে এসএসএল উপরের ব্যান্ডের নীচে অতিক্রম করলে সংক্ষিপ্ত যান।
একটি পজিশনে প্রবেশ করার পর, স্টপ লস এবং লাভের দাম নির্ধারণের জন্য কৌশলটি একটি সহগ দ্বারা গুণিত ATR ব্যবহার করবে। উদাহরণস্বরূপ, স্টপ লস মূল্য হ'ল মূল্য বিয়োগ ATR * 1.5 এবং লাভের মূল্য হ'ল মূল্য প্লাস ATR * 1। এটি কার্যকরভাবে একক ক্ষতি নিয়ন্ত্রণ করতে পারে এবং মুনাফা লক করতে পারে।
যখন এসএসএল চ্যানেলটি অতিক্রম করে, তখন অবস্থানটি বন্ধ করুন। এটি সময়মত স্টপ লসের জন্য প্রবণতার inflection পয়েন্টগুলি ট্র্যাক করতে পারে।
সংশ্লিষ্ট সমাধানঃ
এই কৌশলটির সামগ্রিক যুক্তি স্পষ্ট, প্রবণতা নির্ধারণের জন্য এসএসএল চ্যানেল ব্যবহার করে এবং যুক্তিসঙ্গত স্টপ লস এবং লাভ গ্রহণ সেট করে। তবে মিথ্যা সংকেতগুলি ফিল্টার করতে এবং সেরা পরামিতি সংমিশ্রণটি খুঁজে পেতে অন্যান্য সূচকগুলি অন্তর্ভুক্ত করে আরও পরীক্ষা এবং অপ্টিমাইজেশনের প্রয়োজন রয়েছে। একই সাথে, কৌশলটিকে আরও নমনীয় করার জন্য বিভিন্ন বাজারের অনুযায়ী পরামিতিগুলি সামঞ্জস্য করা উচিত। সামগ্রিকভাবে, এই কৌশলটি স্থিতিশীল আয় অর্জনের জন্য একটি নির্ভরযোগ্য কাঠামো সরবরাহ করে।
/*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 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////