
এই কৌশলটি একটি সমন্বিত প্রযুক্তিগত বিশ্লেষণের সরঞ্জাম যা একাধিক স্লাইডিং মুভিং এভারেজ (এসএমএমএ), ট্রেন্ড সনাক্তকরণ, স্ক্র্যাপিং প্যাটার্ন সনাক্তকরণ এবং ট্রেডিং সময়ের বিশ্লেষণকে একত্রিত করে। এটি ব্যবসায়ীদের বাজার প্রবণতা সনাক্ত করতে, সম্ভাব্য বিপর্যয়গুলি সনাক্ত করতে এবং নির্দিষ্ট ট্রেডিং সময়ের মধ্যে লেনদেন করতে সহায়তা করার জন্য তৈরি করা হয়েছে। এই কৌশলটির কেন্দ্রবিন্দুটি হ’ল বাজারের দিকনির্দেশের বিচার করার জন্য বিভিন্ন চক্রের এসএমএমএ ব্যবহার করা এবং ট্রেডিং সংকেত তৈরি করার জন্য “3 লাইন স্ট্রাইক” এবং “গোল্ডিং প্যাটার্ন” উভয় স্ক্র্যাপিং প্যাটার্ন ব্যবহার করা।
মাল্টিপল স্লাইডিং মুভিং এভারেজ (SMMA): এই কৌশলটি 4 টি SMMA (২১, ৫০, ১০০ এবং ২০০) ব্যবহার করে বিভিন্ন সময় ফ্রেমে বাজারের প্রবণতা মূল্যায়ন করে। এই সমতুল্যগুলি ব্যবসায়ীদের স্বল্প, মাঝারি এবং দীর্ঘমেয়াদী বাজারের চলন বুঝতে সহায়তা করে।
প্রবণতা ভর্তিঃ কৌশলটি স্বল্পমেয়াদী মূল্যের (২ ইএমএ) এবং ২০০ ইএমএ সম্পর্কিত সম্পর্ককে তুলনা করে, রঙের ভরাট ব্যাকগ্রাউন্ডের সাথে বর্তমান প্রবণতাটি প্রদর্শন করে। সবুজ ব্যাকগ্রাউন্ডটি মুদ্রাস্ফীতির প্রবণতা এবং লাল ব্যাকগ্রাউন্ডটি মুদ্রাস্ফীতির প্রবণতা দেখায়।
ছবির ফর্ম্যাট সনাক্তকরণঃ
ট্রেডিং সময় বিশ্লেষণঃ ব্যবহারকারীকে নির্দিষ্ট ট্রেডিং সময় নির্ধারণ করতে দেয় এবং চার্টে এই সময়গুলিকে হাইলাইট করে। এটি ব্যবসায়ীদের সবচেয়ে সক্রিয় ট্রেডিং সময়গুলিতে ফোকাস করতে সহায়তা করে।
ট্রেডিং সিগন্যাল জেনারেটঃ
মাল্টি-ডাইমেনশনাল অ্যানালিসিসঃ একাধিক প্রযুক্তিগত সূচক এবং বিশ্লেষণ পদ্ধতির সমন্বয়ে একটি বিস্তৃত বাজার দৃষ্টিভঙ্গি সরবরাহ করে যা আরও জ্ঞাত লেনদেনের সিদ্ধান্ত নিতে সহায়তা করে।
ট্রেন্ড নিশ্চিতকরণঃ একাধিক সময় ফ্রেম ব্যবহার করে এসএমএমএ বাজার প্রবণতা আরো সঠিকভাবে নিশ্চিত করতে পারে এবং মিথ্যা সংকেত কমাতে পারে।
বিপরীতমুখী সনাক্তকরণঃ নির্দিষ্ট স্কেচ মডেলগুলি সনাক্ত করে, সম্ভাব্য বাজার বিপরীতমুখীকে প্রাথমিকভাবে ক্যাপচার করা যায়, যা ব্যবসায়ীদের প্রবেশ এবং প্রস্থান করার সুযোগ দেয়।
ভিজ্যুয়ালঃ রঙিন ফিলিং এবং গ্রাফিকাল মার্কিং ব্যবহার করে, দ্রুত বিশ্লেষণের জন্য বাজারের অবস্থা এবং সম্ভাব্য সংকেতগুলি এক নজরে করা যায়।
নমনীয়তাঃ ব্যবহারকারীকে বিভিন্ন ট্রেডিং স্টাইল এবং বাজারের অবস্থার সাথে খাপ খাইয়ে নিতে বিভিন্ন প্যারামিটার যেমন গড় লাইন চক্র, ট্রেডিং সময় ইত্যাদি কাস্টমাইজ করার অনুমতি দেয়।
সময় ব্যবস্থাপনা: নির্দিষ্ট ট্রেডিং সময়কে উজ্জ্বলভাবে প্রদর্শন করে, ব্যবসায়ীদের ট্রেডিং সময়কে আরও ভালভাবে পরিচালনা করতে সহায়তা করে এবং বাজারের সবচেয়ে সম্ভাব্য সময়গুলিতে ফোকাস করে।
পিছিয়ে পড়াঃ মুভিং এভারেজগুলি মূলত পিছিয়ে পড়া সূচক, যা দ্রুত পরিবর্তিত বাজারে সময়মতো বিপরীত পয়েন্টগুলি ধরতে পারে না।
অত্যধিক নির্ভরশীল মোডঃ স্ক্রিন মডেলের উপর অত্যধিক নির্ভরশীলতা ভুল সিদ্ধান্তের কারণ হতে পারে, কারণ সমস্ত মোডই বাজারকে সঠিকভাবে পূর্বাভাস দিতে পারে না।
ভুয়া ব্রেকিংয়ের ঝুঁকিঃ ক্রসিং বাজারগুলিতে, দামগুলি প্রায়শই গড়ের লাইন অতিক্রম করতে পারে, যা ভুয়া সংকেত দেয়।
প্যারামিটার সংবেদনশীলতা: কৌশলটির কার্যকারিতা নির্বাচিত প্যারামিটারগুলির উপর নির্ভরশীল এবং বিভিন্ন বাজারের অবস্থার জন্য ঘন ঘন সমন্বয় প্রয়োজন হতে পারে।
মৌলিক বিষয়গুলি উপেক্ষা করাঃ বিশুদ্ধ প্রযুক্তিগত বিশ্লেষণ পদ্ধতিগুলি গুরুত্বপূর্ণ মৌলিক বিষয়গুলি উপেক্ষা করতে পারে, যার ফলে গুরুত্বপূর্ণ সংবাদ বা ঘটনার সময় ভুল বিচার করা যায়।
অত্যধিক লেনদেনঃ উচ্চ অস্থিরতার বাজারে, কৌশলগুলি অত্যধিক লেনদেনের সংকেত তৈরি করতে পারে, লেনদেনের ব্যয় বাড়ায় এবং অত্যধিক লেনদেনের কারণ হতে পারে।
এই ঝুঁকি কমানোর জন্য, নিম্নলিখিত পরামর্শ দেওয়া হয়ঃ
ডায়নামিক প্যারামিটার অ্যাডজাস্টমেন্টঃ গড়-রেখার চক্রের স্ব-অনুকূলিতকরণ, বাজারের অস্থিরতার উপর ভিত্তি করে SMMA-র চক্রটি স্বয়ংক্রিয়ভাবে সামঞ্জস্য করে যাতে এটি বিভিন্ন বাজারের অবস্থার সাথে খাপ খায়।
সিগন্যাল নিশ্চিতকরণ ব্যবস্থাঃ ট্রেডিং সিগন্যাল নিশ্চিত করার জন্য অতিরিক্ত প্রযুক্তিগত সূচক (যেমন আরএসআই, এমএসিডি ইত্যাদি) প্রবর্তন করা হয়, যা সিগন্যালের নির্ভরযোগ্যতা বাড়ায়।
অস্থিরতা ফিল্টারঃ এটিআর (এভারেজ ট্রু রেঞ্জ) সূচক যুক্ত করে, কম অস্থিরতার সময় দুর্বল সংকেতগুলি ফিল্টার করে এবং কেবলমাত্র যখন বাজারে পর্যাপ্ত গতিশীলতা থাকে তখনই লেনদেন করে।
বাজার অবস্থা শ্রেণীবিভাগঃ বর্তমান বাজার অবস্থা শ্রেণীবিভাগ করার জন্য একটি অ্যালগরিদম বিকাশ করুন (প্রবণতা, ক্রসওভার, উচ্চ অস্থিরতা ইত্যাদি) এবং বিভিন্ন অবস্থার জন্য বিভিন্ন ট্রেডিং কৌশল ব্যবহার করুন।
স্টপ লস অপ্টিমাইজেশানঃ গতিশীল স্টপ লস, যেমন এটিআর বা সাম্প্রতিক সমর্থন / প্রতিরোধের স্তর ব্যবহার করে স্টপ লস সেট করুন, যাতে ঝুঁকিগুলি আরও ভালভাবে পরিচালনা করা যায়।
লেনদেনের পরিমাণ বিশ্লেষণঃ লেনদেনের পরিমাণের ডেটা একত্রিত করা, লেনদেনের পরিমাণ নিশ্চিত হওয়ার পরে লেনদেনের সংকেত কার্যকর করা, সংকেতের নির্ভরযোগ্যতা বাড়ানোর জন্য।
সময় ভারসাম্যঃ ঐতিহাসিক তথ্য বিশ্লেষণের বিভিন্ন সময়কালের সাফল্যের উপর ভিত্তি করে বিভিন্ন সময়ের সংকেতকে বিভিন্ন ওজন দেওয়া হয়।
মেশিন লার্নিং ইন্টিগ্রেশনঃ মেশিন লার্নিং অ্যালগরিদম ব্যবহার করে প্যারামিটার নির্বাচন এবং সিগন্যাল জেনারেশন প্রক্রিয়াকে অপ্টিমাইজ করা, কৌশলগুলির অভিযোজনযোগ্যতা এবং কার্যকারিতা উন্নত করা।
মাল্টি টাইম ফ্রেম বিশ্লেষণঃ একাধিক টাইম ফ্রেমের সংকেত বিবেচনা করার জন্য কৌশলগুলি প্রসারিত করুন, যাতে ট্রেডিংয়ের দিকটি বৃহত্তর বাজার প্রবণতাগুলির সাথে সামঞ্জস্যপূর্ণ হয়।
তহবিল ব্যবস্থাপনা অপ্টিমাইজেশানঃ বাজারের অস্থিরতা এবং অ্যাকাউন্টের ঝুঁকির উপর ভিত্তি করে প্রতিটি লেনদেনের আকার নির্ধারণের জন্য গতিশীল অবস্থান আকারের সমন্বয় সাধন করা।
এই অপ্টিমাইজেশানগুলি কৌশলগুলির স্থিতিশীলতা, অভিযোজনযোগ্যতা এবং সামগ্রিক কার্যকারিতা উন্নত করার লক্ষ্যে। এই উন্নতিগুলির মাধ্যমে, কৌশলগুলি বিভিন্ন বাজার পরিস্থিতিতে আরও ভালভাবে সাড়া দিতে পারে, লাভজনকতা বাড়াতে এবং ঝুঁকি হ্রাস করতে পারে।
“মাল্টিপল মিডলাইন ট্রেন্ড ট্র্যাকিং অ্যান্ড রিভার্স প্যাটার্নস আইডেন্টিফিকেশন স্ট্র্যাটেজি” একটি সমন্বিত প্রযুক্তিগত বিশ্লেষণ সরঞ্জাম যা একাধিক উন্নত ট্রেডিং প্রযুক্তির সাথে মিলিত। মাল্টিপল সমতল চলমান গড়, প্রবণতা সনাক্তকরণ, গ্রাফিক মডেল বিশ্লেষণ এবং ট্রেডিং সময়কাল পরিচালনার ব্যবহারের মাধ্যমে, কৌশলটি ব্যবসায়ীদের জন্য একটি বিস্তৃত বাজার বিশ্লেষণ কাঠামো সরবরাহ করে। এটি কেবল সামগ্রিক বাজার প্রবণতা সনাক্ত করতে সহায়তা করে না, তবে সম্ভাব্য বিপরীত দিকগুলিকে ক্যাপচার করতে পারে, যা ট্রেডিং সিদ্ধান্তের জন্য মূল্যবান রেফারেন্স সরবরাহ করে।
কৌশলটির প্রধান সুবিধা হল এর বহুমুখী বিশ্লেষণ পদ্ধতি এবং চাক্ষুষ স্বজ্ঞাত উপস্থাপনা, যা ব্যবসায়ীদের দ্রুত বাজার পরিস্থিতি বুঝতে এবং অবগত সিদ্ধান্ত নিতে সক্ষম করে। যাইহোক, সমস্ত ট্রেডিং কৌশলগুলির মতো এটিও কিছু অন্তর্নিহিত ঝুঁকির মুখোমুখি হয়, যেমন পিছিয়ে পড়া এবং প্রযুক্তিগত সূচকগুলির উপর অত্যধিক নির্ভরশীলতা।
কৌশলটির কার্যকারিতা আরও বাড়ানোর জন্য, বেশ কয়েকটি অপ্টিমাইজেশনের দিক বিবেচনা করা যেতে পারে, যার মধ্যে রয়েছে গতিশীল প্যারামিটারগুলি সামঞ্জস্য করা, অতিরিক্ত নিশ্চিতকরণ ব্যবস্থা প্রবর্তন করা এবং আরও উন্নত প্রযুক্তি যেমন মেশিন লার্নিং ইত্যাদির সংহতকরণ। এই অপ্টিমাইজেশনগুলি কৌশলটিকে বিভিন্ন বাজারের পরিবেশের সাথে আরও ভালভাবে মানিয়ে নিতে সহায়তা করতে পারে, এর স্থায়িত্ব এবং লাভজনকতা বাড়িয়ে তুলতে পারে।
শেষ অবধি, এটি মনে রাখা গুরুত্বপূর্ণ যে কোনও কৌশলই সর্বশক্তিমান নয়। সফল ট্রেডিং কেবলমাত্র ভাল কৌশলগুলির উপর নির্ভর করে না, তবে কঠোর ঝুঁকি ব্যবস্থাপনা, ক্রমাগত বাজার শেখার এবং কৌশলগুলির ক্রমাগত পরিমার্জনও প্রয়োজন। ব্যবসায়ীরা এই কৌশলটি তাদের সামগ্রিক ট্রেডিং সিস্টেমের অংশ হিসাবে ব্যবহার করা উচিত, অন্যান্য বিশ্লেষণ পদ্ধতি এবং ব্যক্তিগত বাজার অন্তর্দৃষ্টি সহ চূড়ান্ত ট্রেডিং সিদ্ধান্ত নেওয়ার জন্য।
/*backtest
start: 2024-06-29 00:00:00
end: 2024-07-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="TMA Overlay Strategy", shorttitle="TMA Overlay", overlay=true)
// ### Four Smoothed Moving Averages
len1 = input.int(21, minval=1, title="Length 1", group="Smoothed MA Inputs")
src1 = close
smma1 = 0.0
sma_1 = ta.sma(src1, len1)
smma1 := na(smma1[1]) ? sma_1 : (smma1[1] * (len1 - 1) + src1) / len1
plot(smma1, color=color.white, linewidth=2, title="21 SMMA")
len2 = input.int(50, minval=1, title="Length 2", group="Smoothed MA Inputs")
src2 = close
smma2 = 0.0
sma_2 = ta.sma(src2, len2)
smma2 := na(smma2[1]) ? sma_2 : (smma2[1] * (len2 - 1) + src2) / len2
plot(smma2, color=color.new(#6aff00, 0), linewidth=2, title="50 SMMA")
h100 = input.bool(true, title="Show 100 Line", group="Smoothed MA Inputs")
len3 = input.int(100, minval=1, title="Length 3", group="Smoothed MA Inputs")
src3 = close
smma3 = 0.0
sma_3 = ta.sma(src3, len3)
smma3 := na(smma3[1]) ? sma_3 : (smma3[1] * (len3 - 1) + src3) / len3
sma3plot = plot(h100 ? smma3 : na, color=color.new(color.yellow, 0), linewidth=2, title="100 SMMA")
len4 = input.int(200, minval=1, title="Length 4", group="Smoothed MA Inputs")
src4 = close
smma4 = 0.0
sma_4 = ta.sma(src4, len4)
smma4 := na(smma4[1]) ? sma_4 : (smma4[1] * (len4 - 1) + src4) / len4
sma4plot = plot(smma4, color=color.new(#ff0500, 0), linewidth=2, title="200 SMMA")
// Trend Fill
trendFill = input.bool(true, title="Show Trend Fill", group="Smoothed MA Inputs")
ema2 = ta.ema(close, 2)
ema2plot = plot(ema2, color=color.new(#2ecc71, 100), linewidth=1, title="EMA(2)", editable=false)
fill(ema2plot, sma4plot, color=color.new(ema2 > smma4 and trendFill ? color.green : color.red, 85), title="Trend Fill")
// End ###
// ### 3 Line Strike
bearS = input.bool(true, title="Show Bearish 3 Line Strike", group="3 Line Strike")
bullS = input.bool(true, title="Show Bullish 3 Line Strike", group="3 Line Strike")
bearSig = close[3] > open[3] and close[2] > open[2] and close[1] > open[1] and close < open[1]
bullSig = close[3] < open[3] and close[2] < open[2] and close[1] < open[1] and close > open[1]
plotshape(bullS ? bullSig : na, style=shape.triangleup, color=color.green, location=location.belowbar, size=size.small, text="3s-Bull", title="3 Line Strike Up")
plotshape(bearS ? bearSig : na, style=shape.triangledown, color=color.red, location=location.abovebar, size=size.small, text="3s-Bear", title="3 Line Strike Down")
// End ###
//### Engulfing Candles
bearE = input.bool(true, title="Show Bearish Big A$$ Candles", group="Big A$$ Candles")
bullE = input.bool(true, title="Show Bullish Big A$$ Candles", group="Big A$$ Candles")
openBarPrevious = open[1]
closeBarPrevious = close[1]
openBarCurrent = open
closeBarCurrent = close
bullishEngulfing = openBarCurrent <= closeBarPrevious and openBarCurrent < openBarPrevious and closeBarCurrent > openBarPrevious
bearishEngulfing = openBarCurrent >= closeBarPrevious and openBarCurrent > openBarPrevious and closeBarCurrent < openBarPrevious
plotshape(bullE ? bullishEngulfing : na, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.tiny, title="Big Ass Candle Up")
plotshape(bearE ? bearishEngulfing : na, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.tiny, title="Big Ass Candle Down")
alertcondition(bullishEngulfing, title="Bullish Engulfing", message="[CurrencyPair] [TimeFrame], Bullish candle engulfing previous candle")
alertcondition(bearishEngulfing, title="Bearish Engulfing", message="[CurrencyPair] [TimeFrame], Bearish candle engulfing previous candle")
// End ###
// ### Trading Session
ts = input.bool(true, title="Show Trade Session", group="Trade Session")
tzOffset = input.int(0, title="Timezone Offset (hours from UTC)", group="Trade Session")
label = input.string("CME Open", title="Label", tooltip="For easy identification", group="Trade Session")
startHour = input.int(7, title="Analysis Start Hour", minval=0, maxval=23, group="Trade Session")
startMinute = input.int(0, title="Analysis Start Minute", minval=0, maxval=59, group="Trade Session")
startHour2 = input.int(8, title="Session Start Hour", minval=0, maxval=23, group="Trade Session")
startMinute2 = input.int(30, title="Session Start Minute", minval=0, maxval=59, group="Trade Session")
endHour2 = input.int(12, title="Session End Hour", minval=0, maxval=23, group="Trade Session")
endMinute2 = input.int(0, title="Session End Minute", minval=0, maxval=59, group="Trade Session")
rangeColor = input.color(#1976d21f, title="Color", group="Trade Session")
showMon = input.bool(true, title="Monday", group="Trade Session")
showTue = input.bool(true, title="Tuesday", group="Trade Session")
showWed = input.bool(true, title="Wednesday", group="Trade Session")
showThu = input.bool(true, title="Thursday", group="Trade Session")
showFri = input.bool(true, title="Friday", group="Trade Session")
showSat = input.bool(false, title="Saturday", group="Trade Session")
showSun = input.bool(false, title="Sunday", group="Trade Session")
startTime = timestamp("UTC", year(time), month(time), dayofmonth(time), startHour - tzOffset, startMinute)
endTime = timestamp("UTC", year(time), month(time), dayofmonth(time), endHour2 - tzOffset, endMinute2)
active = (startTime <= time and time <= endTime and ts) and ((dayofweek == dayofweek.monday and showMon) or (dayofweek == dayofweek.tuesday and showTue) or (dayofweek == dayofweek.wednesday and showWed) or (dayofweek == dayofweek.thursday and showThu) or (dayofweek == dayofweek.friday and showFri) or (dayofweek == dayofweek.saturday and showSat) or (dayofweek == dayofweek.sunday and showSun))
bgcolor(color=active ? rangeColor : na, title="Session Background")
startTime2 = timestamp("UTC", year(time), month(time), dayofmonth(time), startHour2 - tzOffset, startMinute2)
endTime2 = timestamp("UTC", year(time), month(time), dayofmonth(time), endHour2 - tzOffset, endMinute2)
active2 = (startTime2 <= time and time <= endTime2 and ts) and ((dayofweek == dayofweek.monday and showMon) or (dayofweek == dayofweek.tuesday and showTue) or (dayofweek == dayofweek.wednesday and showWed) or (dayofweek == dayofweek.thursday and showThu) or (dayofweek == dayofweek.friday and showFri) or (dayofweek == dayofweek.saturday and showSat) or (dayofweek == dayofweek.sunday and showSun))
bgcolor(color=active2 ? rangeColor : na, title="Session Background")
// End ###
// Trading Strategy
longCondition = bullSig or bullishEngulfing
shortCondition = bearSig or bearishEngulfing
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// eof