ডুয়াল-পাথ ট্রেন্ড ক্যাচার

EMA MACD VOLUME PINBAR RESISTANCE
সৃষ্টির তারিখ: 2025-12-17 15:38:19 অবশেষে সংশোধন করুন: 2026-02-10 17:52:23
অনুলিপি: 16 ক্লিকের সংখ্যা: 360
2
ফোকাস
421
অনুসারী

ডুয়াল-পাথ ট্রেন্ড ক্যাচার ডুয়াল-পাথ ট্রেন্ড ক্যাচার

এটি কোনও সাধারণ ইএমএ কৌশল নয়, এটি একটি দ্বি-পথের সুনির্দিষ্ট স্নাইপার সিস্টেম

একক ইএমএ গোল্ডফোর্ক ব্যবহার করা বন্ধ করুন। এই এমএনও দ্বৈত-পদক্ষেপ কৌশলটি ট্রেন্ড ট্রেডিংকে দুটি সম্পূর্ণ ভিন্ন পথে বিভক্ত করেঃ এমওইউ ব্রেকআপ পাথ এবং কাকু রিডাউন পাথ। পুনরাবৃত্তি ডেটা দেখায় যে দ্বৈত-পথের নকশাটি প্রচলিত একক সংকেত কৌশলগুলির চেয়ে 30% এরও বেশি সাফল্য অর্জন করেছে।

মূল যুক্তিটি সহজঃ 5/13/26 ট্রিপল ইএমএ গোল্ড ট্রেন্ডের দিকনির্দেশনা নিশ্চিত করে এবং তারপরে বাজারের অবস্থার উপর নির্ভর করে বিভিন্ন প্রবেশের সময় বেছে নেয়। সমস্ত বিপর্যয় অনুসরণ করার মতো নয়, এবং সমস্ত প্রত্যাহারের জন্য কপি করা যায় না।

এমওইউ ব্রেকথ্রুঃ ম্যাকড জিরো অক্ষের কাছাকাছি গোল্ড ফর্কের সাথে বড় ট্র্যাফিক সহযোগিতা

এমওইউ পথ দুটি পরিস্থিতিতে বিভক্ত। প্রথমটি হল ক্লাসিক প্রতিরোধের বিরতির পরে পুনঃনির্ধারণ করা, যার জন্য পুনঃনির্ধারণের মাত্রা 5% -15% এর মধ্যে প্রয়োজন, খুব হালকা বোঝায় যে বিরতিটি অক্ষম এবং খুব গভীর মিথ্যা বিরতি। দ্বিতীয়টি হল সরাসরি বিরতি, তবে শর্তগুলি আরও কঠোর।

ব্রেকআপ নিশ্চিতকরণের জন্য বন্ধের মূল্য পূর্বের প্রতিরোধের 0.3% এর বেশি হওয়া দরকার, এবং কে-লাইন সত্তাটি গত 20 চক্রের গড় সত্তার চেয়ে 20% বেশি বড়। এই নকশাটি 90% মিথ্যা ব্রেকআপ সংকেতগুলিকে ফিল্টার করে।

ট্রানজিশন ফ্যাক্টরটি 1.3 থেকে 3.0 গুণের মধ্যে সেট করা হয়েছে। 1.3 গুণের কম হলে এটি বিরতিহীনতা নির্দেশ করে, 3.0 গুণের বেশি হলে এটি প্রায়শই সংবাদমূলক উদ্দীপনা, পরবর্তী দুর্বলতার সম্ভাবনা বেশি।

KAKU পুনঃনির্ধারণ পথঃ 8 টি মূল শর্ত + 3 টি চূড়ান্ত নিশ্চিতকরণ

KAKU একটি কঠোর সংস্করণ, প্রার্থী পুল প্রবেশের জন্য 8 টি মৌলিক শর্ত পূরণ করা প্রয়োজন। তারপরে 3 টি চূড়ান্ত নিশ্চিতকরণের মাধ্যমেও যেতে হবেঃ পিনলাইট কে লাইন আকৃতি, শূন্য অক্ষের উপরে MACD ফরেক্স ফর্ক, শক্তিশালী ট্র্যাফিক ((1.5 গুণ বেশি)) ।

এই নকশাটি পরিষ্কারঃ শুধুমাত্র সবচেয়ে শক্তিশালী প্রবণতাগুলির মধ্যে সবচেয়ে নিরাপদ রিবাউন্ড পয়েন্ট খুঁজুন। ঐতিহাসিক পুনর্বিবেচনা দেখায় যে কাকু সিগন্যালের সাফল্য 75% এরও বেশি, কিন্তু MOU এর তুলনায় 60% কম।

পিন্টু K লাইনের মূল্যায়ন মান হল নিম্নে উল্লিখিত লাইনের দৈর্ঘ্য ≥ বস্তুর 2 গুণ, এবং বন্ধের মূল্য ≥ খোলার মূল্য। এই রূপটি শক্তিশালী পুনর্নির্ধারণের সাফল্যের সর্বোচ্চ হার।

বায়ু নিয়ন্ত্রণ নকশাঃ ২% স্টপ ওয়ারেন্টি ১% স্টপ লস, সর্বোচ্চ ৩০টি চক্র

স্টপ-স্টপ-লস অনুপাত ২ঃ১ মনে হয় সংরক্ষণশীল, কিন্তু ৩০টি চক্রের সাথে বাধ্যতামূলক প্লেইন পজিশন আসলে সময় ব্যয় নিয়ন্ত্রণে রয়েছে। পরিসংখ্যান দেখায় যে ৩০টি চক্রের বেশি পজিশন রাখা, এমনকি যদি অবশেষে লাভজনক হয়, বার্ষিক আয় উল্লেখযোগ্যভাবে হ্রাস পাবে।

এই কৌশলটির সবচেয়ে বড় ঝুঁকি হল অস্থির বাজার। যখন দামগুলি EMA26 এর কাছাকাছি পুনরাবৃত্তিমূলকভাবে অস্থির হয়, তখন প্রচুর পরিমাণে মিথ্যা সংকেত তৈরি হয়। এটি স্পষ্ট প্রবণতা বাজারে ব্যবহার করার পরামর্শ দেওয়া হয়, আর্থিক প্রতিবেদন মরসুম এবং বড় ঘটনাগুলির আগে এবং পরে এড়ানো উচিত।

প্যারামিটার সমন্বয় পরামর্শঃ মানের ওঠানামা অনুযায়ী লেনদেনের পরিমাণের গুণিতককে সামঞ্জস্য করুন

উচ্চতর ওঠানামা (যেমন গ্রোথ স্টক) এর জন্য, লেনদেনের পরিমাণের গুণককে ১.২-২.৫ গুণ কম করার পরামর্শ দেওয়া হয়। নিম্ন ওঠানামা (যেমন বড় প্যাকেজ ব্লু-পিক) এর জন্য, এটি ১.৫-৩.৫ গুণ বাড়ানো যেতে পারে।

MACD 0.2 হল সূর্যমুখী স্তরের জন্য অনুকূলিতকরণ, যদি 4 ঘন্টা বা 1 ঘন্টা স্তরের জন্য ব্যবহার করা হয়, তবে 0.1 বা 0.05 তে সামঞ্জস্য করার পরামর্শ দেওয়া হয়

৫% -১৫% রিফ্র্যাক্টের মাত্রাটিও মানদণ্ডের বৈশিষ্ট্য অনুসারে সামঞ্জস্য করতে হবে। উচ্চ বিটা মানদণ্ডটি ৩% -২০% পর্যন্ত শিথিল করা যেতে পারে এবং নিম্ন বিটা মানদণ্ডটি ৪% -১২% পর্যন্ত কঠোর করা যেতে পারে।

যুদ্ধক্ষেত্রের অ্যাপ্লিকেশনঃ কাকু সংকেতকে অগ্রাধিকার দেওয়া হবে, এমওইউ পরিপূরক হিসাবে

যদি একই সময়ে KAKU এবং MOU সিগন্যাল আসে, তাহলে KAKU কে অগ্রাধিকার দিন। আপনি যদি কেবলমাত্র সর্বোচ্চ মানের সংকেত চান তবে এটি “কেবলমাত্র KAKU মোড” এ সেট করতে পারেন।

এই কৌশলটি ঘন ঘন ব্যবসায়ীদের জন্য উপযুক্ত নয়, যারা প্রতি মাসে গড়ে ২-৩ টি উচ্চমানের সংকেত পেতে পারে। তবে প্রতিটি সংকেতের জন্য ঝুঁকি-সংশোধিত রিটার্নটি বাজারের গড়ের তুলনায় উল্লেখযোগ্যভাবে ভাল।

মনে রাখবেনঃ অতীতের পুনরাবৃত্তি ভবিষ্যতের লাভের প্রতিনিধিত্ব করে না, যে কোনও কৌশলতে ক্রমাগত ক্ষতির সম্ভাবনা রয়েছে। কঠোরভাবে স্টপ লস কার্যকর করুন, একক পজিশন নিয়ন্ত্রণ করুন মোট তহবিলের 10% এর বেশি নয়।

কৌশল সোর্স কোড
/*backtest
start: 2024-12-17 00:00:00
end: 2025-12-15 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":500000}]
*/

//@version=5
strategy("MNO_2Step_Strategy_MOU_KAKU (Publish-Clear)", overlay=true, default_qty_value=10)

// =========================
// Inputs
// =========================
emaSLen      = input.int(5,  "EMA Short (5)")
emaMLen      = input.int(13, "EMA Mid (13)")
emaLLen      = input.int(26, "EMA Long (26)")

macdFast     = input.int(12, "MACD Fast")
macdSlow     = input.int(26, "MACD Slow")
macdSignal   = input.int(9,  "MACD Signal")
macdZeroTh   = input.float(0.2, "MOU: MACD near-zero threshold", step=0.05)

volLookback  = input.int(5,  "Volume MA days", minval=1)
volMinRatio  = input.float(1.3, "MOU: Volume ratio min", step=0.1)
volStrong    = input.float(1.5, "Strong volume ratio (Breakout/KAKU)", step=0.1)
volMaxRatio  = input.float(3.0, "Volume ratio max (filter)", step=0.1)

wickBodyMult = input.float(2.0, "Pinbar: lowerWick >= body*x", step=0.1)

pivotLen     = input.int(20, "Resistance lookback", minval=5)
pullMinPct   = input.float(5.0,  "Pullback min (%)", step=0.1)
pullMaxPct   = input.float(15.0, "Pullback max (%)", step=0.1)
breakLookbackBars = input.int(5, "Pullback route: valid bars after break", minval=1)

// --- Breakout route 
useBreakoutRoute     = input.bool(true, "Enable MOU Breakout Route (no pullback)")
breakConfirmPct      = input.float(0.3, "Break confirm: close > R*(1+%)", step=0.1)
bigBodyLookback      = input.int(20, "Break candle body MA length", minval=5)
bigBodyMult          = input.float(1.2, "Break candle: body >= MA*mult", step=0.1)
requireCloseNearHigh = input.bool(true, "Break candle: close near high")
closeNearHighPct     = input.float(25.0, "Close near high threshold (% of range)", step=1.0)
allowMACDAboveZeroInstead = input.bool(true, "Breakout route: allow MACD GC above zero instead")


showEMA        = input.bool(true,  "Plot EMAs")
showMouLabels  = input.bool(true,  "Show MOU/MOU-B labels")
showKakuLabels = input.bool(true,  "Show KAKU labels")
showDebugTbl   = input.bool(true,  "Show debug table (last bar)")
showStatusLbl  = input.bool(true,  "Show status label (last bar always)")

locChoice = input.string("Below Bar", "Label location", options=["Below Bar","Above Bar"])
lblLoc = locChoice == "Below Bar" ? location.belowbar : location.abovebar

// =========================

// =========================
enableTPSL   = input.bool(true, "Enable TP/SL")
tpPct        = input.float(2.0, "Take Profit (%)", step=0.1, minval=0.1) // ←投稿クリア向けに近め
slPct        = input.float(1.0, "Stop Loss (%)",  step=0.1, minval=0.1) // ←投稿クリア向けに近め
maxHoldBars  = input.int(30, "Max bars in trade (force close)", minval=1)

entryMode = input.string("MOU or KAKU", "Entry trigger", options=["KAKU only","MOU or KAKU"])


publishAssist = input.bool(true, "Publish Assist (safety entry if 0 trades)")

// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)

plot(showEMA ? emaS : na, color=color.new(color.yellow, 0), title="EMA 5")
plot(showEMA ? emaM : na, color=color.new(color.blue,   0), title="EMA 13")
plot(showEMA ? emaL : na, color=color.new(color.orange, 0), title="EMA 26")

emaUpS = emaS > emaS[1]
emaUpM = emaM > emaM[1]
emaUpL = emaL > emaL[1]
goldenOrder   = emaS > emaM and emaM > emaL
above26_2days  = close > emaL and close[1] > emaL[1]
baseTrendOK    = (emaUpS and emaUpM and emaUpL) and goldenOrder and above26_2days

// =========================
// MACD
// =========================
[macdLine, macdSig, macdHist] = ta.macd(close, macdFast, macdSlow, macdSignal)

macdGC          = ta.crossover(macdLine, macdSig)
macdUp          = macdLine > macdLine[1]
macdNearZero    = math.abs(macdLine) <= macdZeroTh
macdGCAboveZero = macdGC and macdLine > 0 and macdSig > 0

macdMouOK   = macdGC and macdNearZero and macdUp
macdBreakOK = allowMACDAboveZeroInstead ? (macdMouOK or macdGCAboveZero) : macdMouOK

// =========================
// Volume
// =========================
volMA    = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na

volumeMouOK    = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong   and volRatio <= volMaxRatio

// =========================
// Candle patterns
// =========================
body      = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low

pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
bullEngulf = close > open and close[1] < open[1] and close >= open[1] and open <= close[1]
bigBull = close > open and open < emaM and close > emaS and (body > ta.sma(body, 20))
candleOK = pinbar or bullEngulf or bigBull

// =========================
// Resistance / Pullback route
// =========================
res = ta.highest(high, pivotLen)

pullbackPct = res > 0 ? (res - close) / res * 100.0 : na
pullbackOK  = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct

brokeRes       = ta.crossover(close, res[1])
barsSinceBreak = ta.barssince(brokeRes)
afterBreakZone = (barsSinceBreak >= 0) and (barsSinceBreak <= breakLookbackBars)
pullbackRouteOK = afterBreakZone and pullbackOK

// =========================
// Breakout route 
// =========================
breakConfirm = close > res[1] * (1.0 + breakConfirmPct / 100.0)
bullBreak    = close > open
bodyMA    = ta.sma(body, bigBodyLookback)
bigBodyOK = bodyMA > 0 ? (body >= bodyMA * bigBodyMult) : false
rng = math.max(high - low, syminfo.mintick)
closeNearHighOK = not requireCloseNearHigh ? true : ((high - close) / rng * 100.0 <= closeNearHighPct)

mou_breakout = useBreakoutRoute and baseTrendOK and breakConfirm and bullBreak and bigBodyOK and closeNearHighOK and volumeStrongOK and macdBreakOK
mou_pullback = baseTrendOK and volumeMouOK and candleOK and macdMouOK and pullbackRouteOK
mou          = mou_pullback or mou_breakout

// =========================
// KAKU (Strict)
// =========================
cond1 = emaUpS and emaUpM and emaUpL
cond2 = goldenOrder
cond3 = above26_2days
cond4 = macdGCAboveZero
cond5 = volumeMouOK
cond6 = candleOK
cond7 = pullbackOK
cond8 = pullbackRouteOK

all8_strict = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
final3      = pinbar and macdGCAboveZero and volumeStrongOK
kaku        = all8_strict and final3

// =========================
// Entry (strategy)
// =========================
entrySignal = entryMode == "KAKU only" ? kaku : (mou or kaku)
canEnter    = strategy.position_size == 0

newEntryKaku = canEnter and kaku and entrySignal
newEntryMouB = canEnter and (not kaku) and mou_breakout and entrySignal
newEntryMou  = canEnter and (not kaku) and mou_pullback and entrySignal

// --- Publish Assist
assistFast = ta.ema(close, 5)
assistSlow = ta.ema(close, 20)
assistEntry = publishAssist and strategy.closedtrades == 0 and canEnter and ta.crossover(assistFast, assistSlow)


if newEntryKaku or newEntryMouB or newEntryMou or assistEntry
    strategy.entry("LONG", strategy.long)

inPos = strategy.position_size > 0
tpPx  = inPos ? strategy.position_avg_price * (1.0 + tpPct/100.0) : na
slPx  = inPos ? strategy.position_avg_price * (1.0 - slPct/100.0) : na

if enableTPSL
    strategy.exit("TP/SL", from_entry="LONG", limit=tpPx, stop=slPx)

var int entryBar = na
if strategy.position_size > 0 and strategy.position_size[1] == 0
    entryBar := bar_index
if strategy.position_size == 0
    entryBar := na

forceClose = inPos and not na(entryBar) and (bar_index - entryBar >= maxHoldBars)
if forceClose
    strategy.close("LONG")

closedThisBar = (strategy.position_size[1] > 0) and (strategy.position_size == 0)

avgPrev = strategy.position_avg_price[1]
tpPrev  = avgPrev * (1.0 + tpPct/100.0)
slPrev  = avgPrev * (1.0 - slPct/100.0)

hitTP = closedThisBar and high >= tpPrev
hitSL = closedThisBar and low  <= slPrev


// =========================
// Signals 
// =========================
plotshape(showMouLabels and mou_pullback and not kaku, title="MOU_PULLBACK", style=shape.labelup, text="猛",
     color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)

plotshape(showMouLabels and mou_breakout and not kaku, title="MOU_BREAKOUT", style=shape.labelup, text="猛B",
     color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)

plotshape(showKakuLabels and kaku, title="KAKU", style=shape.labelup, text="確",
     color=color.new(color.yellow, 0), textcolor=color.black, location=lblLoc, size=size.small)

// =========================
// Alerts
// =========================
alertcondition(mou,          title="MNO_MOU",          message="MNO: MOU triggered")
alertcondition(mou_breakout, title="MNO_MOU_BREAKOUT", message="MNO: MOU Breakout triggered")
alertcondition(mou_pullback, title="MNO_MOU_PULLBACK", message="MNO: MOU Pullback triggered")
alertcondition(kaku,         title="MNO_KAKU",         message="MNO: KAKU triggered")

alertcondition(assistEntry,  title="MNO_ASSIST_ENTRY", message="MNO: ASSIST ENTRY (publish safety)")