
এই কৌশলটি একটি স্বয়ংক্রিয় ট্রেডিং সিস্টেম যা তুলনামূলকভাবে দুর্বল সূচক ((আরএসআই) এর উপর ভিত্তি করে, মূলত বাজারের ওভারসোল্ড শর্তগুলি সনাক্ত করে সম্ভাব্য বিপর্যয়ের সুযোগগুলি ক্যাপচার করার জন্য। কৌশলটি একটি ধীরে ধীরে পজিশনিং পদ্ধতি গ্রহণ করে, যখন আরএসআই নিম্ন স্তরগুলি অতিক্রম করে তখন ধীরে ধীরে একাধিক পজিশন স্থাপন করে এবং মুনাফার লক্ষ্য নির্ধারণের মাধ্যমে ঝুঁকি নিয়ন্ত্রণ করে। সিস্টেমটি একটি নমনীয় তহবিল পরিচালনার জন্য ডিজাইন করা হয়েছে, যা প্রতি লেনদেনের জন্য অ্যাকাউন্টের মোট পরিমাণের 6.6% ব্যবহার করে এবং সর্বাধিক 15 টি পাইরামিড বাড়ানোর অনুমতি দেয়।
কৌশলটির মূল যুক্তি নিম্নলিখিত মূল উপাদানগুলির উপর ভিত্তি করে:
এই কৌশলটি আরএসআই সূচক দ্বারা ওভারসোল্ড সুযোগগুলি সনাক্ত করে, একটি পিরামিডাল ওভারহোল্ডিং এবং একটি নির্দিষ্ট অনুপাতের সাথে মিলিত হয় এবং একটি সম্পূর্ণ ট্রেডিং সিস্টেম তৈরি করে। কৌশলটির সুবিধা হ’ল পদ্ধতিগত অপারেশন এবং ঝুঁকি বিচ্ছিন্নতা, তবে কৌশলটির পারফরম্যান্সের উপর বাজারের প্রবণতা এবং প্যারামিটার সেটিংয়ের প্রভাব সম্পর্কে মনোযোগ দেওয়া প্রয়োজন। গতিশীল প্যারামিটার সমন্বয়, স্টপ লস মেশিন এবং বাজার ফিল্টারিংয়ের মতো অপ্টিমাইজেশন ব্যবস্থা যুক্ত করে কৌশলটির স্থিতিশীলতা এবং লাভজনকতা আরও বাড়ানো যেতে পারে।
/*backtest
start: 2024-09-15 00:00:00
end: 2024-12-10 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("RSI Cross Under Strategy", overlay=true, initial_capital=1500, default_qty_type=strategy.percent_of_equity, default_qty_value=6.6)
// Input parameters
rsiLength = input(14, "RSI Length")
rsiOversold = input(28.5, "RSI Oversold Level")
profitTarget = input(900, "Profit Target (%)")
maxPyramiding = input(15, "Max Pyramiding")
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Detect RSI crossunder
rsiCrossunder = ta.crossunder(rsi, rsiOversold)
// Calculate the profit target price
entryPrice = strategy.position_avg_price
targetPrice = entryPrice * (1 + profitTarget / 100)
// Buy condition
if (rsiCrossunder and strategy.position_size <= maxPyramiding * strategy.equity * 0.066)
strategy.entry("Buy", strategy.long)
// Take profit condition
if (strategy.position_size > 0 and high >= targetPrice)
strategy.close("Buy", qty_percent = 50)
// Plot buy signals
plotshape(rsiCrossunder, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
// Plot sell signals (when position is partially closed)
plotshape(strategy.position_size > 0 and high >= targetPrice, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// Plot RSI
plot(rsi, "RSI", color=color.blue, linewidth=2)
hline(rsiOversold, "RSI Oversold", color=color.red, linestyle=hline.style_dashed)
// Plot entry and target prices
plot(strategy.position_size > 0 ? entryPrice : na, "Entry Price", color=color.green, linewidth=2, style=plot.style_linebr)
plot(strategy.position_size > 0 ? targetPrice : na, "Target Price", color=color.red, linewidth=2, style=plot.style_linebr)
// Display strategy information
var table infoTable = table.new(position.top_right, 3, 6, border_width=1)
table.cell(infoTable, 0, 0, "Strategy Info", bgcolor=color.blue, text_color=color.white)
table.cell(infoTable, 0, 1, "RSI Length: " + str.tostring(rsiLength))
table.cell(infoTable, 0, 2, "RSI Oversold: " + str.tostring(rsiOversold))
table.cell(infoTable, 0, 3, "Profit Target: " + str.tostring(profitTarget) + "%")
table.cell(infoTable, 0, 4, "Order Size: 6.6% of total")
table.cell(infoTable, 0, 5, "Max Pyramiding: " + str.tostring(maxPyramiding) + " times")