
এই কৌশলটি MACD (মোবাইল এভারেজ কনভার্জেশন অফ ইন্ডিকেটর), RSI (আপেক্ষিকভাবে দুর্বল সূচক) এবং SMA (সরল মুভিং এভারেজ) এর সমন্বয়ে একটি নির্ভরযোগ্য ক্রয়-বিক্রয় সংকেত তৈরি করে। MACD মূল্যের গতিশীল পরিবর্তনগুলি ক্যাপচার করতে ব্যবহৃত হয়, আরএসআই ওভারব্লড এবং ওভারসোল্ডের অবস্থা সনাক্ত করতে ব্যবহৃত হয়, এবং এসএমএ ট্রেন্ডের দিকনির্দেশনা নিশ্চিত করতে ব্যবহৃত হয়। এই কৌশলটি একাধিক শর্তের মাধ্যমে ফিল্টার করা হয় যাতে ভুয়া সংকেত হ্রাস করা যায়, যা দিনের ব্যবসায়ের জন্য একটি স্পষ্ট প্রবেশের জায়গা সরবরাহ করে।
এই কৌশলটির জন্য প্রবেশ ও প্রস্থান শর্তগুলি নিম্নরূপঃ
এই কৌশলটি MACD, RSI এবং SMA এর মতো প্রযুক্তিগত সূচকগুলির সাথে মিলিত হয়ে একটি বহু-ফিল্টারযুক্ত ডেইলি ট্রেডিং কৌশল গঠন করে। এটি গতিশীলতা এবং প্রবণতার পরিবর্তনগুলিকে ব্যবসায়ের সুযোগগুলি ধরার জন্য ব্যবহার করে এবং স্পষ্ট প্রবেশ ও প্রস্থান নিয়মের মাধ্যমে ঝুঁকি নিয়ন্ত্রণ করে। যদিও এই কৌশলটি অস্থির বাজারে চ্যালেঞ্জের মুখোমুখি হতে পারে, তবে আরও অপ্টিমাইজেশন এবং ঝুঁকি পরিচালনার মাধ্যমে এটি একটি নির্ভরযোগ্য ডেইলি ট্রেডিং সরঞ্জাম হওয়ার সম্ভাবনা রয়েছে।
/*backtest
start: 2024-05-07 00:00:00
end: 2024-06-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Day Trading Strategy", overlay=true)
// Parametrii pentru MACD
macdLength = input.int(12, title="MACD Length")
signalSmoothing = input.int(9, title="MACD Signal Smoothing")
src = input(close, title="Source")
// Calculul MACD
[macdLine, signalLine, _] = ta.macd(src, macdLength, 26, signalSmoothing)
macdHist = macdLine - signalLine
// Parametrii pentru RSI
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
// Calculul RSI
rsi = ta.rsi(src, rsiLength)
// Filtru suplimentar pentru a reduce semnalele false
longFilter = ta.sma(close, 50) > ta.sma(close, 200)
shortFilter = ta.sma(close, 50) < ta.sma(close, 200)
// Conditii de intrare in pozitie long
enterLong = ta.crossover(macdLine, signalLine) and rsi < rsiOverbought and longFilter
// Conditii de iesire din pozitie long
exitLong = ta.crossunder(macdLine, signalLine) or rsi > rsiOverbought
// Conditii de intrare in pozitie short
enterShort = ta.crossunder(macdLine, signalLine) and rsi > rsiOversold and shortFilter
// Conditii de iesire din pozitie short
exitShort = ta.crossover(macdLine, signalLine) or rsi < rsiOversold
// Adaugarea strategiei pentru Strategy Tester
if (enterLong)
strategy.entry("BUY", strategy.long)
if (exitLong)
strategy.close("BUY")
if (enterShort)
strategy.entry("SELL", strategy.short)
if (exitShort)
strategy.close("SELL")
// Plotarea MACD si Signal Line
plot(macdLine, color=color.blue, title="MACD Line")
plot(signalLine, color=color.orange, title="Signal Line")
hline(0, "Zero Line", color=color.gray)
plot(macdHist, color=color.red, style=plot.style_histogram, title="MACD Histogram")