এই কৌশলটির মূল ধারণা হল সাপ্তাহিক মূল্য প্রবণতার উপর ভিত্তি করে দীর্ঘ এবং সংক্ষিপ্ত দিক নির্ধারণ করা। একটি আপট্রেন্ডে, যখন একটি উত্থান মোমবাতি প্যাটার্ন থাকে তখন এটি দীর্ঘ হয়। যখন দাম পূর্বনির্ধারিত লাভের স্তরে উঠে যায় তখন এটি লাভ করে এবং যখন এটি পূর্বনির্ধারিত স্টপ লস স্তরে পড়ে তখন ক্ষতি বন্ধ করে দেয়।
কৌশলটি প্রথমে সাপ্তাহিক প্রবণতা মূল্যায়নের শর্তাবলী নির্ধারণ করেঃ
isUptrend = close > close[1]
isDowntrend = close < close[1]
যদি বর্তমান বন্ধটি পূর্ববর্তী বন্ধের চেয়ে বেশি হয়, তবে এটি একটি আপট্রেন্ড হিসাবে বিচার করা হয়। অন্যথায়, এটি একটি ডাউনট্রেন্ড।
তারপর ইনট্রা ডে ট্রেডিং সিগন্যাল সংজ্ঞায়িত করা হয়ঃ
buyCondition = getPrevDayClose() > getPrevDayOpen() and getPrevDayOpen() > getPrevDayClose()[1] and isUptrend
অর্থাৎ, পূর্ববর্তী বন্ধটি পূর্ববর্তী খোলা (বৃদ্ধিমুখী মোমবাতি) এর চেয়ে বেশি এবং পূর্ববর্তী খোলাটি পূর্ববর্তী দিনের বন্ধের চেয়ে বেশি (গ্যাপ আপ), এবং এটি একটি আপট্রেন্ডে রয়েছে। এই মানদণ্ডগুলি দীর্ঘ প্রবেশের শর্ত পূরণ করে।
পজিশনে প্রবেশের পর, স্টপ লস পূর্ববর্তী ক্লোজ বিয়োগ ১.৩৮২ গুণ পূর্ববর্তী দিনের প্রকৃত শরীরের উপর সেট করা হয়ঃ
stopLoss = getPrevDayClose() - 1.382 * (getPrevDayClose() - getPrevDayOpen())
লাভের পরিমাণ পূর্ববর্তী বন্ধের সাথে যুক্ত করা হয় এবং পূর্ববর্তী বন্ধ এবং স্টপ লসের মধ্যে পার্থক্যের দ্বিগুণঃ
takeProfit = getPrevDayClose() + 2 * (getPrevDayClose() - stopLoss)
এটি স্টপ লস এবং মুনাফা গ্রহণের কৌশল উপলব্ধি করে।
এই কৌশলটির সুবিধাগুলির মধ্যে রয়েছেঃ
এছাড়াও কিছু ঝুঁকি আছেঃ
এই ঝুঁকিগুলি নিয়ন্ত্রণ করার জন্য, কিছু অপ্টিমাইজেশান বিবেচনা করা যেতে পারেঃ
কৌশলটি নিম্নলিখিত উপায়েও অপ্টিমাইজ করা যেতে পারেঃ
সামগ্রিকভাবে এটি একটি বেশ ব্যবহারিক কৌশল, ঝুঁকি নিয়ন্ত্রণের সময় প্রবণতা অনুসারে ট্রেডিংকে তুলে ধরে। এটি একটি মৌলিক ইনট্রাডে ট্রেডিং কৌশল হিসাবে কাজ করতে পারে এবং বৈচিত্র্যময় ট্রেডিং পোর্টফোলিও তৈরি করতে বিভিন্ন বাজার এবং পণ্যগুলির জন্য মডুলারভাবে অনুকূলিত হতে পারে। প্রকৃত ব্যবহারে, ব্যয় নিয়ন্ত্রণ এবং ফাঁদ এড়ানো সমালোচনামূলক, তাই সঠিক মানসিকতা বজায় রাখা মূল বিষয়।
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-24 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Trend Following Strategy with Stop Loss and Take Profit", overlay=true) // Function to get previous day's close and open getPrevDayClose() => request.security(syminfo.tickerid, "D", close[1]) getPrevDayOpen() => request.security(syminfo.tickerid, "D", open[1]) // Determine weekly trend isUptrend = close > close[1] isDowntrend = close < close[1] // Determine daily conditions for buy buyCondition = getPrevDayClose() > getPrevDayOpen() and getPrevDayOpen() > getPrevDayClose()[1] and isUptrend // Calculate stop loss and take profit stopLoss = getPrevDayClose() - 1.382 * (getPrevDayClose() - getPrevDayOpen()) takeProfit = getPrevDayClose() + 2 * (getPrevDayClose() - stopLoss) // Strategy logic if (isUptrend) strategy.entry("Buy", strategy.long, when = buyCondition) strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=stopLoss, profit=takeProfit) if (isDowntrend) strategy.entry("Sell", strategy.short) // Plotting the trend on the chart plotshape(series=isUptrend, title="Uptrend", color=color.green, style=shape.triangleup, location=location.abovebar) plotshape(series=isDowntrend, title="Downtrend", color=color.red, style=shape.triangledown, location=location.belowbar) // Plotting stop loss and take profit levels on the chart plot(stopLoss, color=color.red, title="Stop Loss", linewidth=2, style=plot.style_cross) plot(takeProfit, color=color.green, title="Take Profit", linewidth=2, style=plot.style_cross)