
দ্বিপাক্ষিক পরিমাণযুক্ত বিপরীতমুখী ট্র্যাকিং কৌশলটি একটি সহজ চলমান গড় সূচক এবং এলোমেলো সূচকগুলির সংমিশ্রণ ব্যবহার করে একটি কার্যকর এবং স্থিতিশীল সংক্ষিপ্ত লাইন ট্রেডিং কৌশল অর্জন করে যা বাজারের দ্রুত বিপরীতমুখীতা ধরে রাখে এবং মিস করা সংকেতের কারণে সুযোগের ব্যয় হ্রাস করে।
এই কৌশলটি দুটি অংশ নিয়ে গঠিতঃ 123 মডেলের বিপরীত অংশ এবং স্বনির্ধারিত চলমান গড় অংশ। 123 মডেলের বিপরীত অংশটি পূর্ববর্তী দুইটি ট্রেডিং দিনের বন্ধের দামের সম্পর্ক গণনা করে সিদ্ধান্ত নেয় যে কোনও বিপরীত সুযোগ রয়েছে কিনা। যদি আগের দিন বন্ধের দাম পূর্ববর্তী দুই দিনের চেয়ে কম হয় এবং বর্তমান ট্রেডিং দিনের বন্ধের দাম পূর্ববর্তী দিনের চেয়ে বেশি হয় এবং এলোমেলো ধীররেখাটি 50 এর নীচে থাকে তবে একটি ক্রয়-বিক্রয় সংকেত উত্পন্ন হয়। যদি আগের দিন বন্ধের দাম পূর্ববর্তী দুই দিনের চেয়ে বেশি হয় এবং বর্তমান ট্রেডিং দিনের বন্ধের দাম পূর্ববর্তী দিনের চেয়ে কম হয় এবং এলোমেলো ধীররেখার চেয়ে 50 এর উপরে থাকে তবে একটি বিক্রয় সংকেত উত্পন্ন হয়।
দ্বিপাক্ষিক পরিমাণযুক্ত বিপরীতমুখী ট্র্যাকিং কৌশলটির সর্বাধিক সুবিধা হ’ল বিপরীতমুখী মোড এবং প্রবণতা ফিল্টারিংয়ের সমন্বয়, যা এটিকে দ্রুত বিপরীতমুখী ধরা এবং বাজারের অস্থিরতায় আটকাতে দেয় না। মূলত দুটি উপার্জনের উত্স রয়েছেঃ প্রথমত, 123 টি মোডের সনাক্তকরণ সময়মতো দামের দ্রুত পাল্টানোর সুযোগ দেয়, যা অনেক স্থিতিশীল কৌশলগুলি করতে পারে না। দ্বিতীয়ত, অভিযোজিত চলমান গড়ের প্রয়োগটি নিশ্চিত করে যে ট্রেডিংয়ের দিকনির্দেশ এবং মূল প্রবণতা একত্রিত হয়, কার্যকরভাবে শব্দটি ফিল্টার করে এবং অপ্রয়োজনীয় ক্ষতি হ্রাস করে।
এই কৌশলটির প্রধান ঝুঁকি হ’ল প্যারামিটার সেটিংয়ের অনুপযুক্ততা ট্রেডিং ফ্রিকোয়েন্সি বা সংকেত সনাক্তকরণের ক্ষমতার অভাবের কারণ হতে পারে। যদি 123 ফর্ম্যাট প্যারামিটার সেটিংটি খুব সংবেদনশীল হয়, তবে এটি ঘন ঘন ট্রেডিংয়ের কারণ হতে পারে, যা অস্থিরতার মধ্যে আরও বেশি পজিশন ক্ষতির কারণ হতে পারে। যদি আপনি খুব ধীর গতিতে চলন্ত গড় প্যারামিটার সেটিংয়ের সাথে খাপ খাইয়ে নেন, তবে আপনি বিপরীত সুযোগটি মিস করতে পারেন।
এই কৌশলটি নিম্নলিখিত দিকগুলি থেকে অনুকূলিতকরণ করা যেতে পারেঃ প্রথমত, 123 ফর্মের প্যারামিটারগুলিকে এমনভাবে সামঞ্জস্য করা যায় যাতে এটি স্পষ্ট বিপরীতকরণ সনাক্ত করতে পারে এবং ভুল সংকেত তৈরি করতে খুব সংবেদনশীল না হয়। দ্বিতীয়ত, স্থিতিশীল এবং সংবেদনশীলতার মধ্যে সর্বোত্তম ভারসাম্য খুঁজে পেতে স্বয়ংক্রিয়ভাবে চলমান গড়ের প্যারামিটারগুলিকে অনুকূলিত করা যায়। তৃতীয়ত, স্টপ লস কৌশলগুলি একক ক্ষতি নিয়ন্ত্রণের জন্য প্রবর্তন করা যেতে পারে। চতুর্থত, সিদ্ধান্তের গুণমান বাড়ানোর জন্য বাজারের আবেগ সূচকগুলির সাথে মিলিত হতে পারে।
দ্বিপাক্ষিক পরিমাণযুক্ত বিপরীত ট্র্যাকিং কৌশলটি বিপরীত ট্রেডিং এবং প্রবণতা ফিল্টারিংয়ের দুটি অপরিহার্য অংশকে সফলভাবে একীভূত করেছে। সমন্বয়ের সুবিধাটি উল্লেখযোগ্য। প্যারামিটার সেটিংয়ের ক্রমাগত অপ্টিমাইজেশান এবং ক্ষতি বন্ধ এবং ঝুঁকি নিয়ন্ত্রণের প্রক্রিয়াটি ক্রমাগত উন্নত করে, এই কৌশলটি একটি উচ্চ-কার্যকর পরিমাণযুক্ত ট্রেডিং কৌশল হওয়ার সম্ভাবনা রয়েছে যা সহজেই লাভ অর্জন করতে পারে এবং ঝুঁকি নিয়ন্ত্রণ করতে পারে।
/*backtest
start: 2024-01-18 00:00:00
end: 2024-02-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 08/12/2020
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Everyone wants a short-term, fast trading trend that works without large
// losses. That combination does not exist. But it is possible to have fast
// trading trends in which one must get in or out of the market quickly, but
// these have the distinct disadvantage of being whipsawed by market noise
// when the market is volatile in a sideways trending market. During these
// periods, the trader is jumping in and out of positions with no profit-making
// trend in sight. In an attempt to overcome the problem of noise and still be
// able to get closer to the actual change of the trend, Kaufman developed an
// indicator that adapts to market movement. This indicator, an adaptive moving
// average (AMA), moves very slowly when markets are moving sideways but moves
// swiftly when the markets also move swiftly, change directions or break out of
// a trading range.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
KAMA(Length) =>
pos = 0.0
nAMA = 0.0
xPrice = close
xvnoise = abs(xPrice - xPrice[1])
nfastend = 0.666
nslowend = 0.0645
reverse = input(false, title="Trade reverse")
nsignal = abs(xPrice - xPrice[Length])
nnoise = sum(xvnoise, Length)
nefratio = iff(nnoise != 0, nsignal / nnoise, 0)
nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2)
nAMA := nz(nAMA[1]) + nsmooth * (xPrice - nz(nAMA[1]))
pos := iff(close[1] > nAMA, 1,
iff(close[1] < nAMA, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Kaufman Moving Average Adaptive", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthKAMA = input(21, minval=2)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posKAMA = KAMA(LengthKAMA)
pos = iff(posReversal123 == 1 and posKAMA == 1 , 1,
iff(posReversal123 == -1 and posKAMA == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )