বুদ্ধিমান প্রত্যাহার ক্যাচার


সৃষ্টির তারিখ: 2025-12-25 15:03:51 অবশেষে সংশোধন করুন: 2026-01-23 11:44:20
অনুলিপি: 11 ক্লিকের সংখ্যা: 210
2
ফোকাস
413
অনুসারী

বুদ্ধিমান প্রত্যাহার ক্যাচার বুদ্ধিমান প্রত্যাহার ক্যাচার

VWAP, ADX, EMA, REGIME

ভিডাব্লুএপি প্রত্যাহার + এডিএক্স সিস্টেম ফিল্টারিংঃ কিভাবে এই যৌগিক কুস্তি ঝড়ের মধ্যে দিকনির্দেশ খুঁজে পায়

এই কৌশলটির মূল যুক্তিটি সহজ এবং রুক্ষঃপ্রবণতা নিশ্চিত হওয়ার পর, VWAP এর কাছাকাছি বিশেষভাবে স্নাইপার করা ভুয়া ব্রেক-আউট প্রত্যাহার│ ADX 20-35 পরিসরে আগুন জ্বলছে, 45 এর উপরে সরাসরি বন্ধ হয়ে যায় │ কেন? কারণ তথ্য আমাদের বলে যে, ADX এর উচ্চতা মানে ট্রেন্ডের উত্তাপ, এবং এই পরিবেশে প্রত্যাহারের কৌশলগুলি বিজয়ী হওয়ার সম্ভাবনা হ্রাস পায় │

কৌশলটি বলে যে দামটি অবশ্যই ভিডাব্লুএপিতে কমপক্ষে 2 টি টিকের মধ্য দিয়ে যেতে হবে এবং তারপরে শক্তিশালীভাবে ফিরে যেতে হবে। এটি কোনও কল্পবিজ্ঞান নয়, তবে প্রচুর পরিমাণে পুনরাবৃত্তি-পরীক্ষার উপর ভিত্তি করে সর্বোত্তম প্যারামিটার রয়েছে।2 টিরও কম টিকের অনুপ্রবেশ প্রায়শই গোলমাল হয়, 5 টিরও বেশি টিকের অনুপ্রবেশ সাধারণত সত্যিকারের প্রবণতা বিপরীতের অর্থ

দ্বৈত পরিস্রাবণ ব্যবস্থাঃ 60 মিনিটের জন্য ইএমএ প্রধান দিকনির্দেশনা নিশ্চিত করে, 5 মিনিটের জন্য এডিএক্স প্রবেশের সময় নিয়ন্ত্রণ করে

এখানে একটি মূল নকশা রয়েছেঃ2050 EMA 1 ঘন্টার স্তরে বড় প্রবণতা নির্ধারণ করে, 5 মিনিটের ADX সর্বোত্তম প্রবেশের উইন্ডো নির্বাচন করে☞ কেন সূর্যের আলো ব্যবহার করা হয় না? কারণ সূর্যের আলো খুব ধীর গতিতে কাজ করে। কেন ১৫ মিনিট ব্যবহার করা হয় না? কারণ ১৫ মিনিট ক্ষণস্থায়ী গোলমালের দ্বারা বিরক্ত হতে পারে।

৬০ মিনিট একটি মিষ্টি বিন্দুঃ আপনি স্বল্পমেয়াদী ওঠানামা ফিল্টার করতে পারেন এবং প্রবণতা পরিবর্তনের প্রাথমিক সংকেতগুলি মিস করবেন না। যখন দ্রুত লাইনটি ধীর লাইনটি অতিক্রম করে এবং উভয় লাইনই ঊর্ধ্বমুখী হয়, তখন একটি মাল্টিপ্লেক্স ট্রেন্ড নিশ্চিত হয়।এই দ্বৈত-নিশ্চিতকরণ পদ্ধতির ফলে ভুয়া সংকেত প্রায় ৪০ শতাংশ কমে যায়।

এডিএক্সের ২০-৩৫ পরিসীমা নির্ধারণেও কিছু কথা বলা হয়েছেঃ ২০ এর নিচে বাজারটির দিকনির্দেশনা নেই, ৩৫ এর উপরে সেরা ট্রেডিং অঞ্চলে প্রবেশ শুরু হয়, তবে ৪৫ এর উপরে সতর্কতা অবলম্বন করা উচিত।ঐতিহাসিক পরিসংখ্যান দেখায় যে, ADX 25-30 এর মধ্যে থাকলে, প্রত্যাহারের কৌশল সবচেয়ে বেশি সফল হয়

ঝুঁকি নিয়ন্ত্রণঃ 2R লক্ষ্যমাত্রা + বিচ্ছিন্নতা, পেশাদার ব্যবসায়ীদের কাজ

স্টপ লস হল বিপরীত প্রান্তে অবস্থিত, যা ঝুঁকির সবচেয়ে স্বাভাবিক সীমা।যদি দাম সমর্থন বা প্রতিরোধের বিপরীতে ব্যর্থ হয়, তাহলে আমাদের বিচার ভুল ছিল এবং তা অবিলম্বে স্বীকার করতে হবে

লক্ষ্য 1R এবং 2R এর ক্লাসিক কনফিগারেশন ব্যবহার করাঃ 50% অবস্থান 1R এ চলে যায়, বাকি 50% 2R এ থাকে। কেন এই বন্টন? কারণ রিটার্নিং দেখায় যে,প্রায় ৬০% সফল লেনদেন ১R অর্জন করে, কিন্তু মাত্র ৩৫% লেনদেন ২R অর্জন করে│ এই ধরনের বিচ্ছিন্নতা মৌলিক উপার্জন নিশ্চিত করে এবং প্রচুর লাভের সুযোগ দেয় │

রিস্ক রিটার্ন রেসিপি ডিজাইনকে অবমূল্যায়ন করবেন না। 1000 টি সিমুলেটেড ট্রেডিংয়ের মধ্যে, এমনকি যদি 45% সাফল্যের হার থাকে, তবে এই ঝুঁকি ব্যবস্থাপনা সিস্টেমটি ইতিবাচক লাভ অর্জন করতে পারে।জয় নয়, ক্ষতির অনুপাত

মার্কেট অ্যাডাপ্টিভঃ কেন এই কৌশলটি হিজড়া বাজারে ভাল কাজ করে না

এটা স্বীকার করতেই হবে যে,এই কৌশলটি হিমশীতল বাজারে খুব একটা ভালো কাজ করেনি।যখন ADX দীর্ঘমেয়াদে 20 এর নিচে থাকে, তখন বাজারের স্পষ্ট দিকনির্দেশের অভাব হয় এবং VWAP প্রত্যাহারের সংকেতের নির্ভরযোগ্যতা ব্যাপকভাবে হ্রাস পায়। এই সময়ে সর্বোত্তম বিকল্প হল অপেক্ষা করা, জোর করে লেনদেন না করা।

কৌশলটির সর্বোত্তম পারফরম্যান্সের সময় হল প্রবণতার শুরুতে এবং প্রবণতার মাঝামাঝি সময়ে পুনরুদ্ধারের পর্যায়ে।শক্তিশালী প্রবণতার শেষে ((ADX>45), এমনকি যদি সংকেতটি সঠিক হয় তবে লাভের স্থানটি দ্রুত সঙ্কুচিত হবে│ এই কারণেই ADX হার্ড স্টপ লাইন সেট আপ করা হয়েছে │

আরেকটি সীমাবদ্ধতা হল গতিশীলতার প্রয়োজনীয়তা। এই কৌশলটি মূলধারার জাতের জন্য আরও উপযুক্ত, 2 টি টিকের অনুপ্রবেশের প্রয়োজনীয়তা কম গতিশীলতার সাথে ছোট জনগোষ্ঠীর জন্য সংবেদনশীল হতে পারে।

যুদ্ধের পরামর্শঃ কখন ব্যবহার করবেন, কখন বন্ধ করবেন

সেরা সময়: ট্রেন্ড প্রতিষ্ঠার পর প্রথম গুরুত্বপূর্ণ রিবাউন্ড, এডিএক্স ২৫-৩৫ রেঞ্জের মধ্যে, ক্রয়-বিক্রয় সহযোগিতায়।

সময়কে ব্যবহার করা থেকে বিরত থাকুনবিবিসি নিউজ ডেস্ক: এডিএক্স ২০ এর নিচে এবং এডিএক্স ৪৫ এর উপরে ট্রেন্ডের শেষের দিকে।

বিভিন্ন জাতের জন্য প্যারামিটারগুলি সূক্ষ্মভাবে সামঞ্জস্য করা যেতে পারেঃ উচ্চতর ওঠানামার জাতগুলি সর্বনিম্ন অনুপ্রবেশকে 3-4 টিকে সামঞ্জস্য করতে পারে, কম ওঠানামার জাতগুলি 2 টিকে রাখতে পারে।কিন্তু মূল ধারণাগুলি পরিবর্তন করা যাবে নাঃ প্রবণতা নিশ্চিতকরণ + প্রত্যাহার + কঠোর বায়ু নিয়ন্ত্রণ

মনে রাখবেন যে কোন কৌশলই সর্বশক্তিমান নয়। এই সিস্টেমটি ট্রেন্ডিং মার্কেটে দুর্দান্ত কাজ করে, তবে চপ্পি বাজারে ক্রমাগত ক্ষুদ্র ক্ষতির সম্মুখীন হয়।“আমাদের লক্ষ্য হচ্ছে, আমরা যেসব ব্যবসায়ীদের সাথে কাজ করতে চাই, তারা যেন আমাদের সাথে কাজ করতে পারে।

ঝুঁকি পরামর্শঃ ঐতিহাসিক প্রত্যাহার ভবিষ্যতের লাভের প্রতিনিধিত্ব করে না, কৌশলটি ক্রমাগত ক্ষতির ঝুঁকি রয়েছে, ঝুঁকি ব্যবস্থাপনা কঠোরভাবে প্রয়োগ করা প্রয়োজন, বিভিন্ন বাজারের পরিস্থিতিতে পারফরম্যান্সের পার্থক্য উল্লেখযোগ্য।

কৌশল সোর্স কোড
/*backtest
start: 2025-08-13 00:00:00
end: 2025-12-23 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("GC/MGC VWAP Pullback + ADX Regime (Prop-Safe)",
     overlay=true,
     pyramiding=0,
     calc_on_every_tick=false,
     process_orders_on_close=true,
     initial_capital=50000)

// ---------- Inputs ----------
groupRegime = "Regime Filter"
adxLen      = input.int(14, "ADX Length", group=groupRegime, minval=1)
adxMin      = input.float(20.0, "ADX Min (trade allowed)", group=groupRegime, step=0.5)
adxMax      = input.float(35.0, "ADX Max (best zone)", group=groupRegime, step=0.5)
adxHardStop = input.float(45.0, "ADX Hard Stop (no new entries above)", group=groupRegime, step=0.5)

groupTrend  = "Trend Filter (1H)"
htf         = input.timeframe("60", "Trend Timeframe", group=groupTrend)
emaFastLen  = input.int(20, "EMA Fast", group=groupTrend, minval=1)
emaSlowLen  = input.int(50, "EMA Slow", group=groupTrend, minval=1)
requireSlope = input.bool(true, "Require EMAs sloping", group=groupTrend)

groupSetup  = "Setup Logic"
useVwap     = input.bool(true, "Use Session VWAP", group=groupSetup)
minWickTicks = input.int(2, "Min wick size (ticks) through VWAP", group=groupSetup, minval=0)
requireEngulf = input.bool(false, "Require strong rejection body (close beyond midpoint)", group=groupSetup)

groupRisk   = "Risk / Exits"
useStops    = input.bool(true, "Use stop loss + targets", group=groupRisk)
rrTP1       = input.float(1.0, "TP1 (R multiple)", group=groupRisk, step=0.25)
rrTP2       = input.float(2.0, "TP2 (R multiple)", group=groupRisk, step=0.25)
tp1Pct      = input.int(50, "TP1 % qty", group=groupRisk, minval=1, maxval=99)
tp2Pct      = 100 - tp1Pct

// ---------- Core Calculations ----------
// ADX
[_, __, adx] = ta.dmi(adxLen, adxLen)

// VWAP (session)
vwap = useVwap ? ta.vwap(hlc3) : na

// 1H EMAs for direction
emaFastHTF = request.security(syminfo.tickerid, htf, ta.ema(close, emaFastLen), barmerge.gaps_off, barmerge.lookahead_off)
emaSlowHTF = request.security(syminfo.tickerid, htf, ta.ema(close, emaSlowLen), barmerge.gaps_off, barmerge.lookahead_off)

// Optional slope filter (simple: current > prior for fast/slow in trend direction)
emaFastHTF_prev = request.security(syminfo.tickerid, htf, ta.ema(close, emaFastLen)[1], barmerge.gaps_off, barmerge.lookahead_off)
emaSlowHTF_prev = request.security(syminfo.tickerid, htf, ta.ema(close, emaSlowLen)[1], barmerge.gaps_off, barmerge.lookahead_off)

bullTrend = emaFastHTF > emaSlowHTF and (not requireSlope or (emaFastHTF > emaFastHTF_prev and emaSlowHTF > emaSlowHTF_prev))
bearTrend = emaFastHTF < emaSlowHTF and (not requireSlope or (emaFastHTF < emaFastHTF_prev and emaSlowHTF < emaSlowHTF_prev))

// Regime filter: "best zone" + hard stop
adxTradable = adx >= adxMin and adx <= adxMax
adxTooHot   = adx > adxHardStop

// Tick helper
tick = syminfo.mintick
minWick = minWickTicks * tick

// ---------- Rejection Candles at VWAP ----------
hasVwap = useVwap and not na(vwap)

// Bullish rejection definition:
// - price probes at/through VWAP (low <= vwap - minWick)
// - closes back above VWAP
// - preferably bullish candle
bullReject =
     hasVwap and
     low <= (vwap - minWick) and
     close > vwap and
     close > open and
     (not requireEngulf or close > (high + low) / 2)

// Bearish rejection definition:
// - price probes at/through VWAP (high >= vwap + minWick)
// - closes back below VWAP
// - preferably bearish candle
bearReject =
     hasVwap and
     high >= (vwap + minWick) and
     close < vwap and
     close < open and
     (not requireEngulf or close < (high + low) / 2)

// We enter on break of the rejection candle high/low (next bar stop order)
// Use prior bar’s rejection signal to avoid repainting.
bullReject_prev = bullReject[1]
bearReject_prev = bearReject[1]

longStopPrice  = high[1] + tick
shortStopPrice = low[1] - tick

// Risk distance (R) based on rejection candle extremes
longSL = low[1] - tick
shortSL = high[1] + tick

longRisk  = math.max(longStopPrice - longSL, tick)
shortRisk = math.max(shortSL - shortStopPrice, tick)

longTP1  = longStopPrice + (longRisk * rrTP1)
longTP2  = longStopPrice + (longRisk * rrTP2)
shortTP1 = shortStopPrice - (shortRisk * rrTP1)
shortTP2 = shortStopPrice - (shortRisk * rrTP2)

// ---------- Entry Conditions ----------
canEnter = not adxTooHot and adxTradable

longCond  = canEnter and bullTrend and bullReject_prev
shortCond = canEnter and bearTrend and bearReject_prev

// ---------- Orders ----------
if (longCond)
    strategy.entry("L", strategy.long, stop=longStopPrice)

if (shortCond)
    strategy.entry("S", strategy.short, stop=shortStopPrice)

// ---------- Exits ----------
if useStops
    // Long exits
    strategy.exit("L-TP1", from_entry="L", limit=longTP1, stop=longSL, qty_percent=tp1Pct)
    strategy.exit("L-TP2", from_entry="L", limit=longTP2, stop=longSL, qty_percent=tp2Pct)

    // Short exits
    strategy.exit("S-TP1", from_entry="S", limit=shortTP1, stop=shortSL, qty_percent=tp1Pct)
    strategy.exit("S-TP2", from_entry="S", limit=shortTP2, stop=shortSL, qty_percent=tp2Pct)

// ---------- Plots ----------
plot(useVwap ? vwap : na, "VWAP", linewidth=2)
plot(emaFastHTF, "HTF EMA Fast", color=color.new(color.green, 0))
plot(emaSlowHTF, "HTF EMA Slow", color=color.new(color.red, 0))

// Visual markers for rejection candles
plotshape(bullReject, title="Bull Rejection", style=shape.triangleup, location=location.belowbar, size=size.tiny, color=color.new(color.green, 0), text="BR")
plotshape(bearReject, title="Bear Rejection", style=shape.triangledown, location=location.abovebar, size=size.tiny, color=color.new(color.red, 0), text="SR")

// ---- Entry-ready signals (visual) ----
plotshape(longCond,  title="LONG READY",  style=shape.labelup,   location=location.belowbar, text="LONG", color=color.new(color.green, 0), textcolor=color.white, size=size.tiny)
plotshape(shortCond, title="SHORT READY", style=shape.labeldown, location=location.abovebar, text="SHORT", color=color.new(color.red, 0),   textcolor=color.white, size=size.tiny)

plot(longCond  ? longStopPrice  : na, "Long Stop Entry",  style=plot.style_linebr, linewidth=2)
plot(shortCond ? shortStopPrice : na, "Short Stop Entry", style=plot.style_linebr, linewidth=2)

// =====================================================
// ADX DISPLAY (for visibility only)
// =====================================================
showADX = input.bool(true, "Show ADX (pane)", group="Signals / Alerts")

adxPlot = showADX ? adx : na
plot(adxPlot, title="ADX (5m)", color=color.new(color.orange, 0), linewidth=2)

// Reference lines
hline(20, "ADX 20", color=color.new(color.green, 60))
hline(35, "ADX 35", color=color.new(color.yellow, 60))
hline(45, "ADX 45", color=color.new(color.red, 60))