উইলিয়ামস ইনসাইড ডে ব্রেকআউট কৌশল

INSIDE DAY BREAKOUT STOP LOSS FPO
সৃষ্টির তারিখ: 2025-10-11 16:55:28 অবশেষে সংশোধন করুন: 2025-10-11 16:55:28
অনুলিপি: 0 ক্লিকের সংখ্যা: 212
2
ফোকাস
319
অনুসারী

উইলিয়ামস ইনসাইড ডে ব্রেকআউট কৌশল উইলিয়ামস ইনসাইড ডে ব্রেকআউট কৌশল

এই কৌশলটি কীসের জন্য?

আপনি কি জানেন? এই কৌশলটি স্টক মার্কেটে “বিড়াল-বিড়াল লুকানো” গেম খেলার মতো! যখন বাজারে “অভ্যন্তরীণ দিন” আসে (আজকের ওঠানামা পুরোপুরি গতকালের দ্বারা আচ্ছাদিত হয়), তখন মনে হয় বাজারটি একটি বড় কৌশল করছে, একটি বড় বিস্ফোরণের জন্য প্রস্তুত!

এই কৌশলটি বিশেষ করে ‘অনুপ্রেরণামূলক’ ব্রেকিং মূহুর্তগুলোকে ধরার জন্য তৈরি করা হয়েছে, বিশেষ করে সোমবার, বৃহস্পতিবার এবং শুক্রবারের ‘গোল্ড ট্রেডিং ডে’গুলোতে।

🔍 নীতির মূল ধারণাগুলি খুবই সহজ

কল্পনা করুন, বাজারটি একটি সংকুচিত স্প্রিংয়ের মতোঃ

  • গতকাল ছিল “অন্তর্ভুক্তির দিন” (সম্পূর্ণভাবে পূর্ববর্তী দিন দ্বারা আবৃত)
  • গতকালের দিনটি ছিল অনেক উজ্জ্বল (অনেকের মাথা খুব উত্তেজিত)
  • আজকে খোলার দাম সমালোচনামূলক প্রতিরোধের নীচে

যখন দাম শেষ 3 চক্রের সর্বোচ্চ পয়েন্ট অতিক্রম করে, তখন কৌশলটি অবিলম্বে প্রবেশ করে এবং আরও বেশি কিছু করে, যেমন একটি স্প্রেডশিট মুক্তি পায়!

ক্যালসিয়াম ঝুঁকি নিয়ন্ত্রণঃ দুইটি সুরক্ষা লক

প্রথম লকঃ স্থির ক্ষতি আপনি পয়েন্ট হারান বা শতাংশ হারান নির্বাচন করতে পারেন, যেমন আপনার নিজের জন্য একটি “ক্ষতির সীমা” সেট করুন, কখনও লোভী হবেন না!

দ্বিতীয় লকডাউনঃ এফপিও আইন থেকে বেরিয়ে আসা এটা সবচেয়ে বুদ্ধিমান জায়গা! একবার আপনি যদি একটি ট্রেডিং শুরু করেন, আপনি লাভবান হবেন, এবং আপনি অবিলম্বে মুনাফা পাবেন। এটা “শুভ-শুভ-শুভ” এর মতো বুদ্ধিমান, বাজার অনুশোচনা না হওয়া পর্যন্ত!

কেন একটি নির্দিষ্ট ট্রেডিং দিবস নির্বাচন করা হয়?

এই কৌশলটি শুধুমাত্র সোমবার, বৃহস্পতিবার, এবং শুক্রবার ট্রেড করে, এবং এই দিনগুলোকে বেছে নেওয়া হয় না!

  • সোমবার: নতুন সপ্তাহের জন্য পথ নির্ধারণ
  • বৃহস্পতিবার: গুরুত্বপূর্ণ তথ্য প্রকাশের দিন
  • শুক্রবারঃ তহবিল স্থানান্তরের দিন

মঙ্গলবার ও বুধবারের দিনগুলোকে ‘নিস্তব্ধ’ দিন হিসেবে বিবেচনা না করে গল্পের দিনগুলোকে বেছে নিন।

এই কৌশলটি কার জন্য?

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

মনে রাখবেন, বাজার একটি স্প্রিংয়ের মতো, যত বেশি চাপাবেন, তত বেশি উঁচুতে উঠবে!

কৌশল সোর্স কোড
/*backtest
start: 2025-01-01 00:00:00
end: 2025-10-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BNB_USDT","balance":500000}]
*/

//@version=5
strategy("Larry Williams Bonus Track Pattern", overlay=true)

//──────────────────────────────────
// Inputs
//──────────────────────────────────
useDayFilter = input.bool(true, "Trade only Mon/Thu/Fri")
sl_type      = input.string("Points", "Stop Loss Type", options=["Points","Percent"])
sl_value     = input.float(1.0, "Stop Loss Value (points or %)", step=0.1, minval=0.0)
debugPlot    = input.bool(false, "Show Levels")

//──────────────────────────────────
// DAILY SERIES for SIGNAL
//──────────────────────────────────
hD = request.security(syminfo.tickerid, "D", high,  lookahead=barmerge.lookahead_off)
lD = request.security(syminfo.tickerid, "D", low,   lookahead=barmerge.lookahead_off)
oD = request.security(syminfo.tickerid, "D", open,  lookahead=barmerge.lookahead_off)
cD = request.security(syminfo.tickerid, "D", close, lookahead=barmerge.lookahead_off)

// Inside bar (yesterday) and prior bar (two days ago) is bullish
inside_prev         = hD[1] < hD[2] and lD[1] > lD[2]
prev_of_inside_bull = cD[2] > oD[2]

// Relevant highs: inside (t-1) + two prior bars (t-2, t-3)
inside_high        = hD[1]
max_pre_inside_two = math.max(hD[2], hD[3])
entry_stop_price   = math.max(inside_high, max_pre_inside_two)   // highest of the last 3 bars

//──────────────────────────────────
// DAILY LOGIC (first bar of the day)
//──────────────────────────────────
isNewDay = ta.change(time("D"))     // true on the FIRST bar of each day
dayOpen  = open                      // real daily open
dow      = dayofweek                 // day of week (works intraday)

passDay  = not useDayFilter or (dow == dayofweek.monday or dow == dayofweek.thursday or dow == dayofweek.friday)
open_ok  = dayOpen < inside_high and dayOpen < max_pre_inside_two

// Valid setup ONLY for the day immediately after the inside bar
longSetupToday = isNewDay and passDay and inside_prev and prev_of_inside_bull and open_ok

//──────────────────────────────────
// Helper function to create a “day identifier” as a numeric value
//──────────────────────────────────
getDayId() =>
    year(time) * 10000 + month(time) * 100 + dayofmonth(time)

//──────────────────────────────────
// Pending order management / exact entry the day after inside bar
//──────────────────────────────────
var float entryPrice = na
var int entryDayId = na

if isNewDay
    // Cancel any pending stop from the previous day (TIF: 1 day)
    strategy.cancel("LE")

    // If today is the next day after inside and open is valid:
    if longSetupToday and strategy.position_size == 0
        if dayOpen >= entry_stop_price
            // Gap above stop → enter at MARKET on today’s open
            strategy.entry("LE", strategy.long)
        else
            // No gap → place a STOP valid only for today
            strategy.entry("LE", strategy.long, stop=entry_stop_price)

// Record the entry day when position opens
enteredNow = strategy.position_size > 0 and strategy.position_size[1] == 0
if enteredNow
    entryPrice := strategy.position_avg_price
    entryDayId := getDayId()

//──────────────────────────────────
// Fixed Stop Loss
//──────────────────────────────────
if strategy.position_size > 0
    avg = strategy.position_avg_price
    sl_price = sl_type == "Points" ? (avg - sl_value) : (avg * (1.0 - sl_value/100.0))
    strategy.exit(id="SL", from_entry="LE", stop=sl_price)
else
    strategy.cancel("SL")

//──────────────────────────────────
// FPO: Close on the FIRST profitable open AFTER entry day
// (never on the same day)
//──────────────────────────────────
if isNewDay and strategy.position_size > 0 and not na(entryDayId)
    if getDayId() > entryDayId and dayOpen > strategy.position_avg_price
        strategy.close("LE", comment="FPO")

//──────────────────────────────────
// Optional Plots
//──────────────────────────────────
plot(debugPlot ? inside_high        : na, "Inside High (D-1)")
plot(debugPlot ? max_pre_inside_two : na, "High (D-2/D-3)")
plot(debugPlot ? entry_stop_price   : na, "Entry (max of last 3 highs)", linewidth=2)