এই কৌশলটি মূলত একটি সমান্তরাল ক্রস-লাইন কৌশল। দামের চলমান গড় গণনা করে এবং একটি নির্দিষ্ট দীর্ঘমেয়াদী চলমান গড় সেট করে, যখন একটি স্বল্পমেয়াদী চলমান গড় দীর্ঘমেয়াদী চলমান গড়ের নীচে থেকে অতিক্রম করে তখন বেশি করে; যখন একটি স্বল্পমেয়াদী চলমান গড় দীর্ঘমেয়াদী চলমান গড়ের উপরে থেকে অতিক্রম করে তখন শূন্য করে।
দামের গড় ক্রস কৌশলটির মূল ধারণাটি হ’লঃ দামের চলমান গড়গুলি কার্যকরভাবে দামের পরিবর্তনের প্রবণতা প্রতিফলিত করতে পারে। কৌশলটি দুটি পৃথক পিরিয়ডের চলমান গড় এবং একটি নির্দিষ্ট ট্রেডিং লজিকের মাধ্যমে বাজারের প্রবণতার পরিবর্তনগুলি বিচার করে ট্রেডিং সংকেত তৈরি করে।
এই কৌশলটি একটি দীর্ঘমেয়াদী গড় এবং একটি স্বল্পমেয়াদী গড় গণনা করে। দীর্ঘ লাইনটি মূলত বড় প্রবণতা নির্ধারণ করে, সংক্ষিপ্ত লাইনটি বড় প্রবণতা প্রক্রিয়া চলাকালীন স্বল্পমেয়াদী ওঠানামা ক্যাপচার করার জন্য ব্যবহৃত হয়। কৌশলটির ট্রেডিং সংকেতগুলি মূলত সংক্ষিপ্ত লাইন থেকে দীর্ঘ লাইনের ক্রস থেকে আসেঃ সংক্ষিপ্ত লাইনে দীর্ঘ লাইনটি অতিক্রম করে বহু সংকেত, সংক্ষিপ্ত লাইনের নীচে দীর্ঘ লাইনটি অতিক্রম করে ফাঁকা সংকেত।
বিশেষ করে, এই কৌশলটি 7 টি বিভিন্ন ধরণের মুভিং এভারেজ ব্যবহার করে, যার মধ্যে রয়েছে এসএমএ, ইএমএ, ভিডাব্লুএমএ ইত্যাদি। ব্যবহারকারীরা মুভিং এভারেজের ধরন বেছে নিতে পারেন। মুভিং এভারেজের দৈর্ঘ্যও নমনীয়ভাবে সেট করা যায়। এছাড়াও, কৌশলটি একটি নির্দিষ্ট ট্রেডিং সময়সীমার সীমাবদ্ধতা এবং পজিশন ম্যানেজমেন্ট ব্যবস্থা সরবরাহ করে। এই সেটিংসের মাধ্যমে, ব্যবহারকারীরা বিভিন্ন জাত এবং বাজারের পরিবেশের সাথে খাপ খাইয়ে নিতে কৌশলটির প্যারামিটারগুলিকে নমনীয়ভাবে সামঞ্জস্য করতে পারে।
দামের গড় রেখা অতিক্রম করার কৌশলটির প্রধান সুবিধাগুলি হলঃ
কৌশলগত লজিক পরিষ্কার এবং সহজ, সহজেই বোঝা যায় এবং বাস্তবায়ন করা যায়, যা নতুনদের শেখার জন্য উপযুক্ত।
কৌশলগত নীতিগুলি দৃঢ়, সমান্তরাল ট্রেডিং নিয়মের উপর ভিত্তি করে যা পুরোপুরি প্রমাণিত, বাজার অনুশীলন পরীক্ষার মধ্য দিয়ে যায়।
কৌশল প্যারামিটারগুলি নমনীয়ভাবে সামঞ্জস্যযোগ্য, ব্যবহারকারীরা তাদের বাজার বিচার এবং পছন্দ অনুসারে উপযুক্ত প্যারামিটারগুলি চয়ন করতে পারেন।
কৌশলটি একটি নির্দিষ্ট ঝুঁকি নিয়ন্ত্রণ ব্যবস্থা রয়েছে যা ক্ষতিগ্রস্থ পত্রের সময় হ্রাস করতে পারে এবং অপ্রয়োজনীয় বিপরীত অবস্থান খোলার প্রতিরোধ করতে পারে।
কৌশলটিতে একাধিক গড়ের ধরন রয়েছে, ব্যবহারকারীরা তাদের ট্রেডিং প্রজাতির জন্য সবচেয়ে উপযুক্ত চলমান গড়ের ধরন বেছে নিতে পারেন।
এই কৌশলটি মূলত ছুটির বাজারগুলির অস্বাভাবিক অস্থিরতা এড়াতে নির্দিষ্ট ট্রেডিং সময়ের মধ্যে ট্রেডিং লজিক চালু করতে সহায়তা করে।
যদিও মূল্য গড় ক্রস কৌশল অনেক সুবিধা আছে, বাস্তব লেনদেনের মধ্যে কিছু ঝুঁকি রয়েছে, প্রধানত নিম্নলিখিত দুটি ক্ষেত্রেঃ
মুভিং এভারেজের বেশিরভাগ অংশে পিছিয়ে থাকার কারণে, ক্রস সিগন্যালগুলি দামের বিপরীতমুখী সমাপ্তির পরে দেরিতে উপস্থিত হতে পারে এবং সহজেই আটকে যেতে পারে।
যদি প্যারামিটারগুলি ভুলভাবে সেট করা হয়, তবে ক্রস সিগন্যালগুলি খুব ঘন ঘন হতে পারে, যার ফলে ট্রেডিংয়ের ক্রিয়াকলাপ খুব বেশি হয় এবং আরও বেশি লেনদেনের ব্যয় হয়।
উপরোক্ত ঝুঁকিগুলোকে নিয়ন্ত্রণ ও মোকাবিলা করার জন্য নিম্নলিখিত পদক্ষেপ গ্রহণ করা যেতে পারেঃ
একক ক্ষতির ঝুঁকি নিয়ন্ত্রণের জন্য একটি সংযত স্টপ লস সেট করুন।
ফিল্টারিং শর্তাবলী বাড়ানো, লেনদেনের ঘনত্ব হ্রাস করা, অত্যধিক লেনদেন রোধ করা। যেমন মূল্য চ্যানেল বা মূল্যের অস্থিরতার মাত্রা শর্তাবলী স্থাপন করা।
মুভিং এভারেজের প্যারামিটার অপ্টিমাইজ করুন, আপনার ট্রেডিং ভেরিয়েন্ট এবং চক্রের জন্য সবচেয়ে উপযুক্ত প্যারামিটার সমন্বয় নির্বাচন করুন। বিভিন্ন বাজারের অবস্থার অধীনে কৌশলগুলির স্থায়িত্ব পরীক্ষা করুন।
এই মূল্যের গড় ক্রস কৌশলটি আরও অপ্টিমাইজ করার জন্য আরও জায়গা রয়েছে, মূলত নিম্নলিখিত দিকগুলি থেকেঃ
অতিরিক্ত উত্তেজনাপূর্ণ পরিস্থিতিতে সুরক্ষা ব্যবস্থা বাড়ানো। যেমন, দামের তীব্র ওঠানামা হলে লেনদেন স্থগিত করা, বাজার অস্বাভাবিকতার সময় এড়ানো।
আরও ফিল্টারিং শর্ত এবং সংমিশ্রণ ট্রেডিং সিগন্যাল যুক্ত করুন, সিগন্যালের গুণমান এবং স্থায়িত্ব উন্নত করুন। যেমন অন্যান্য প্রযুক্তিগত সূচকগুলির সাথে মিলিত ক্রস যা প্রবণতা সনাক্ত করতে পারে।
একটি গতিশীল প্যারামিটার সিস্টেম ব্যবহার করে। বাজারের শর্ত এবং জাতের বৈশিষ্ট্য অনুসারে স্বয়ংক্রিয়ভাবে চলমান গড়ের দৈর্ঘ্য এবং লেনদেনের সুইচগুলির মতো মূল প্যারামিটারগুলিকে স্থির মান ব্যবহারের পরিবর্তে সামঞ্জস্য করে।
সমন্বিত বহু-প্রজাতির বাজারজাতকরণের মতো উচ্চতর কৌশলগুলিতে এই গড় ক্রস-লাইন সংকেতটি প্রয়োগ করুন। অন্যান্য তথ্যের সাথে সমন্বয় করে, গভীরতার কৌশল অপ্টিমাইজেশনের জন্য।
উপরের পরামর্শগুলো এই কৌশলকে আরো ব্যাপকভাবে প্রয়োগযোগ্য করে তুলতে পারে, ট্রেডিং কার্যকারিতা উন্নত করতে পারে, এবং ঝুঁকি ও লাভের সমন্বয় করতে পারে।
এই নিবন্ধটি নোরোর ক্রস এমএ সহজ সমান্তরাল ক্রস কৌশলটির বিশদ কোড বিশ্লেষণ এবং ব্যাখ্যা করেছে। আমরা এর কৌশলগত চিন্তাধারা, নীতিগত কাঠামো, প্রধান সুবিধাগুলি এবং সম্ভাব্য উন্নতির দিকগুলি বিশ্লেষণ করেছি। সামগ্রিকভাবে, কৌশলটি যুক্তিসঙ্গতভাবে পরিষ্কার, সহজ ব্যবহারযোগ্য, প্যারামিটারগুলি নমনীয়ভাবে সামঞ্জস্যপূর্ণ এবং বিভিন্ন ট্রেডিং পরিবেশের সাথে খাপ খাইয়ে নিতে পারে। আমরা কৌশলটিতে থাকা সমস্যা এবং ঝুঁকিগুলি বিশ্লেষণ করেছি এবং লক্ষ্যবস্তু মোকাবেলার পরামর্শ দিয়েছি। আমি বিশ্বাস করি যে এই বিশ্লেষণ এবং আলোচনার মাধ্যমে ব্যবসায়ীরা এই ধরণের কৌশলগুলি আরও গভীরভাবে বুঝতে পারে এবং তাদের রিয়েল-স্ট্রিম ট্রেডিং সিস্টেমগুলিকে ক্রমাগত অপ্টিমাইজ করতে সহায়তা করে।
/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2019
//@version=4
strategy(title = "Noro's CrossMA", shorttitle = "CrossMA", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 0, commission_value = 0.1)
needlong = input(true, "long")
needshort = input(true, "short")
lotsize = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
type = input(defval = "SMA", options = ["SMA", "EMA", "VWMA", "DEMA", "TEMA", "KAMA", "PCMA"], title = "MA type")
src = input(close, defval = close, title = "MA Source")
len = input(30, defval = 30, minval = 1, title = "MA length")
off = input(00, defval = 00, minval = 0, title = "MA offset")
anti = input(true, defval = true, title = "Anti-saw filter")
showma = input(true, defval = true, title = "Show MA")
showbg = input(false, defval = false, title = "Show background")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//DEMA
dema = 2 * ema(src, len) - ema(ema(close, len), len)
//TEMA
xPrice = close
xEMA1 = ema(src, len)
xEMA2 = ema(xEMA1, len)
xEMA3 = ema(xEMA2, len)
tema = 3 * xEMA1 - 3 * xEMA2 + xEMA3
//KAMA
xvnoise = abs(src - src[1])
nfastend = 0.20
nslowend = 0.05
nsignal = abs(src - src[len])
nnoise = sum(xvnoise, len)
nefratio = iff(nnoise != 0, nsignal / nnoise, 0)
nsmooth = pow(nefratio * (nfastend - nslowend) + nslowend, 2)
kama = 0.0
kama := nz(kama[1]) + nsmooth * (src - nz(kama[1]))
//PriceChannel
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2
sma_1 = sma(src, len)
ema_1 = ema(src, len)
vwma_1 = vwma(src, len)
ma2 = type == "SMA" ? sma_1 : type == "EMA" ? ema_1 : type == "VWMA" ? vwma_1 : type == "DEMA" ? dema : type == "TEMA" ? tema : type == "KAMA" ? kama : type == "PCMA" ? center : 0
ma = ma2[off]
macol = showma ? color.blue : na
plot(ma, color = macol, linewidth = 3, transp = 0)
//Background
trend = 0
trend := anti == false and close > ma ? 1 : anti == false and close < ma ? -1 : low > ma ? 1 : high < ma ? -1 : trend[1]
bgcol = showbg ? trend == 1 ? color.lime : trend == -1 ? color.red : na : na
bgcolor(bgcol, transp = 70)
//Trading
size = strategy.position_size
truetime = time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)
lot = 0.0
lot := size != size[1] ? strategy.equity / close * lotsize / 100 : lot[1]
if trend == 1 and trend[1] == -1
strategy.entry("Long", strategy.long, lot, when = needlong and truetime)
if trend == -1 and trend[1] == 1
strategy.entry("Short", strategy.short, lot, when = needshort and truetime)
if size > 0 and needshort == false and trend == -1
strategy.close_all()
if size < 0 and needlong == false and trend == 1
strategy.close_all()
if time > timestamp(toyear, tomonth, today, 23, 59)
strategy.close_all()
strategy.cancel("Long")
strategy.cancel("Short")