
এই কৌশলটি তিনটি সূচক ব্যবহার করে Parabolic SAR, MACD, এবং RSI ব্যবহার করে স্বয়ংক্রিয়ভাবে একাধিক সময় ফ্রেমে মাল্টি হেড ট্রেডিং করতে পারে। কৌশলটি মূলত স্টক এবং পণ্যের জাতের দিনের ব্যবসায়ের জন্য প্রযোজ্য।
পিএসএআর সূচকটি মূল্যের দিকনির্দেশনা এবং প্রবণতা বিপরীত দিক নির্ধারণের জন্য ব্যবহৃত হয়। পয়েন্টের সংখ্যা কমে গেলে এটি একটি মাল্টিহেড সংকেত এবং পয়েন্টের সংখ্যা বেড়ে গেলে এটি একটি ফাঁকা হেড সংকেত।
MACD সূচকটি মূল্যের গতিবিধি নির্ধারণ করে। MACD লাইন এবং SIGNAL লাইনটি একটি মাল্টি-হেড সংকেত হিসাবে উপরের দিকে এবং একটি ফাঁকা-হেড সংকেত হিসাবে নীচে।
আরএসআই সূচকটি ওভার-বই ওভার-সেলিংয়ের বিচার করে। আরএসআই হ্রাসের চেয়ে বেশি হলে এটি একটি মাল্টি-হেড সংকেত এবং হ্রাসের চেয়ে কম হলে এটি একটি ফাঁকা-হেড সংকেত।
উপরের তিনটি সূচকের সংকেতকে একত্রিত করে চূড়ান্ত সিদ্ধান্ত নেওয়া হয়।
চপ সূচক ব্যবহার করে একীভূত বাজারগুলিকে ফিল্টার করুন এবং whipsaws এড়ান।
বিপরীত পিরামিড পজিশনিং নীতি ব্যবহার করে, স্টপ লস এবং স্টপ স্টপ সেট করে ঝুঁকি এবং লাভের গতিশীল ব্যবস্থাপনা করা যায়।
মাল্টি-ইনডিকেটর পোর্টফোলিও, প্রবণতা, গতিশীলতা এবং ওভার-বিক্রয় ওভার-বিক্রয় বৈশিষ্ট্যগুলির সমন্বিত বিচার, সিদ্ধান্ত গ্রহণের নির্ভুলতা উন্নত করে।
বাজার চরিত্রের সাথে খাপ খাইয়ে নেওয়া, চপ সূচক ফিল্টারিংয়ের মাধ্যমে বাজারকে একীভূত করা, বন্ধ করা এড়ানো।
ঝুঁকি এবং মুনাফার গতিশীল ব্যবস্থাপনা, বিপরীত পিরামিড পজিশনিং নীতির মাধ্যমে সক্রিয় স্টপ লস স্টপ অর্জনের জন্য।
বিভিন্ন জাতের এবং বাজারের পরিবেশের সাথে সামঞ্জস্য করার জন্য অনেকগুলি কাস্টমাইজযোগ্য এবং অপ্টিমাইজযোগ্য প্যারামিটার রয়েছে।
একাধিক টাইম ফ্রেম সমর্থন করে, যা দৈনিক স্বল্প ও মাঝারি দৈর্ঘ্যের লেনদেনের ক্ষেত্রে নমনীয়।
মাল্টি-হাইড সিদ্ধান্তগুলি প্যারামিটার সেটিংয়ের উপর নির্ভর করে, এবং ভুল সেটিংয়ের ফলে ত্রুটি হতে পারে।
সূচকটি ভুল সংকেত দেওয়ার সম্ভাবনা রয়েছে, যা প্রবণতা বিরোধী সিদ্ধান্ত নিতে পারে।
স্টপ লস কন্ট্রোলারটি ভুলভাবে সেট করা হয়েছে, যা আপনার ক্ষতি বাড়াতে বা আপনার মুনাফা হ্রাস করতে পারে।
এটির জন্য প্রায়শই পরামিতিগুলি পর্যবেক্ষণ এবং সামঞ্জস্য করা প্রয়োজন, এবং এর জন্য প্রচুর পরিমাণে ব্যয় হয়।
মডেল যাচাইকরণ মডিউল যোগ করুন, পরামিতি সেট এবং সংকেত কার্যকারিতা মূল্যায়ন করুন।
মেশিন লার্নিং মডিউল যোগ করা হয়েছে যাতে প্যারামিটার এবং মডেলের স্বয়ংক্রিয় অপ্টিমাইজেশান করা যায়।
তথ্যের আরও উৎস, আরও বৈশিষ্ট্য, এবং আরও ভাল সিদ্ধান্ত গ্রহণের সুযোগ।
মনিটরিং এবং রক্ষণাবেক্ষণের স্বয়ংক্রিয় সিস্টেম তৈরি করা, যা মানুষের হস্তক্ষেপের খরচ কমাবে।
পুনঃনিরীক্ষণ এবং অনুকরণ মূল্যায়ন এবং পরীক্ষার কৌশলগুলির কার্যকারিতা বৃদ্ধি করা।
এই কৌশলটি একাধিক প্রযুক্তিগত সূচকের সমন্বয় ব্যবহার করে নিয়ম-ভিত্তিক অটোমেটেড কোয়ান্টাম ট্রেডিং অর্জন করে। কৌশলটি অপ্টিমাইজেশনের জন্য বৃহত্তর স্থান, স্কেলযোগ্যতা, প্যারামিটার সমন্বয়, ফাংশন এক্সটেনশন এবং মেশিন লার্নিংয়ের মতো অপ্টিমাইজেশনের জন্য উপযুক্ত, যা রিয়েল-ডিস্ক ট্রেডিংয়ের জন্য আরও ভাল কাজ করবে।
/*backtest
start: 2022-12-20 00:00:00
end: 2023-12-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © vikris
//@version=4
strategy("[VJ]Phoenix Force of PSAR +MACD +RSI", overlay=true, calc_on_every_tick = false,pyramiding=0)
// ********** Strategy inputs - Start **********
// Used for intraday handling
// Session value should be from market start to the time you want to square-off
// your intraday strategy
// Important: The end time should be at least 2 minutes before the intraday
// square-off time set by your broker
var i_marketSession = input(title="Market session", type=input.session,
defval="0915-1455", confirm=true)
// Make inputs that set the take profit % (optional)
longProfitPerc = input(title="Long Take Profit (%)",
type=input.float, minval=0.0, step=0.1, defval=3) * 0.01
shortProfitPerc = input(title="Short Take Profit (%)",
type=input.float, minval=0.0, step=0.1, defval=3) * 0.01
// Set stop loss level with input options (optional)
longLossPerc = input(title="Long Stop Loss (%)",
type=input.float, minval=0.0, step=0.1, defval=3) * 0.01
shortLossPerc = input(title="Short Stop Loss (%)",
type=input.float, minval=0.0, step=0.1, defval=3) * 0.01
// ********** Strategy inputs - End **********
// ********** Supporting functions - Start **********
// A function to check whether the bar or period is in intraday session
barInSession(sess) => time(timeframe.period, sess) != 0
// Figure out take profit price
longExitPrice = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)
// Determine stop loss price
longStopPrice = strategy.position_avg_price * (1 - longLossPerc)
shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc)
// ********** Supporting functions - End **********
// ********** Strategy - Start **********
// See if intraday session is active
bool intradaySession = barInSession(i_marketSession)
// Trade only if intraday session is active
//=================Strategy logic goes in here===========================
psar = sar(0.02,0.02,0.2)
c1a = close > psar
c1v = close < psar
malen = input(50, title="MA Length")
mm200 = sma(close, malen)
c2a = close > mm200
c2v = close < mm200
fast = input(12, title="MACD Fast EMA Length")
slow = input(26, title="MACD Slow EMA Length")
[macd,signal,hist] = macd(close, fast,slow, 9)
c3a = macd >= 0
c3v = macd <= 0
rsilen = input(7, title="RSI Length")
th = input(50, title="RSI Threshold")
rsi14 = rsi(close, rsilen)
c4a = rsi14 >= th
c4v = rsi14 <= th
chopi = input(7, title="Chop Index lenght")
ci = 100 * log10(sum(atr(1), chopi) / (highest(chopi) - lowest(chopi))) / log10(chopi)
buy = c1a and c2a and c3a and c4a ? 1 : 0
sell = c1v and c2v and c3v and c4v ? -1 : 0
//Final Long/Short Condition
longCondition = buy==1 and ci <50
shortCondition = sell==-1 and ci <50
//Long Strategy - buy condition and exits with Take profit and SL
if (longCondition and intradaySession)
stop_level = longStopPrice
profit_level = longExitPrice
strategy.entry("My Long Entry Id", strategy.long)
strategy.exit("TP/SL", "My Long Entry Id", stop=stop_level, limit=profit_level)
//Short Strategy - sell condition and exits with Take profit and SL
if (shortCondition and intradaySession)
stop_level = shortStopPrice
profit_level = shortExitPrice
strategy.entry("My Short Entry Id", strategy.short)
strategy.exit("TP/SL", "My Short Entry Id", stop=stop_level, limit=profit_level)
// Square-off position (when session is over and position is open)
squareOff = (not intradaySession) and (strategy.position_size != 0)
strategy.close_all(when = squareOff, comment = "Square-off")
// ********** Strategy - End **********