মর্নিং ক্যান্ডেল ব্রেকআউট এবং রিভার্সাল কৌশল

OHLC MA ATR RSI
সৃষ্টির তারিখ: 2024-07-31 14:16:42 অবশেষে সংশোধন করুন: 2024-07-31 14:16:42
অনুলিপি: 5 ক্লিকের সংখ্যা: 591
1
ফোকাস
1617
অনুসারী

মর্নিং ক্যান্ডেল ব্রেকআউট এবং রিভার্সাল কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি নিম্নরূপ কাজ করেঃ

  1. মূল মূল্য নির্ধারণ করুনঃ কৌশলটি প্রথমে সকাল ১১ টার সর্বোচ্চ এবং সর্বনিম্ন মূল্য চিহ্নিত করে এবং এই দুটি মূল্যকে মূল রেফারেন্স স্তর হিসাবে ব্যবহার করে।

  2. প্রবেশের সংকেতঃ

    • একাধিক সংকেত: যখন ক্রমাগত দুইটি K-রেখার সমাপ্তির মূল্য সকালের সর্বোচ্চ পয়েন্ট অতিক্রম করে, তখন একটি একাধিক সংকেত দেওয়া হয়।
    • খালি করার সংকেত: যখন ক্রমাগত দুইটি কে-লাইন বন্ধ হয়ে সকালের সর্বনিম্ন পয়েন্ট অতিক্রম করে, তখন খালি করার সংকেত দেওয়া হয়।
  3. স্টপ লস সেটিংঃ

    • মাল্টি-হেড স্টপঃ সকালের ব্রেকডাউন সেট করুন।
    • খালি মাথার ক্ষতিঃ সকালের ব্রেকডাউন এর সর্বোচ্চ পয়েন্ট।
  4. অবসরের প্রক্রিয়াঃ

    • স্টপ-অফ স্পর্শ করুনঃ যখন দাম স্টপ-অফ স্তরের স্পর্শ করে তখন স্বয়ংক্রিয়ভাবে পজিশন খালি করে দেয়।
    • বিদায়ের সময়ঃ সমস্ত হোল্ডাররা স্বয়ংক্রিয়ভাবে রাত্রি ১৫ঃ১৫ টায় পলিসি থেকে বেরিয়ে যান যাতে রাতারাতি ঝুঁকি নিয়ন্ত্রণ করা যায়।
  5. লেনদেনের সময়সীমাঃ লেনদেনের সময়সীমা ১৫ঃ১৫ এর পরে নতুন লেনদেন আরম্ভ করা হবে না, যাতে লেনদেনের শেষের আগে অস্বাভাবিক অস্থিরতা না ঘটে।

কৌশলগত সুবিধা

  1. স্পষ্ট ট্রেডিং নিয়মঃ কৌশলগুলি স্পষ্ট মূল্যের ব্রেকআউট এবং বিপরীত লজিকের উপর ভিত্তি করে, যা বোঝা এবং সম্পাদন করা সহজ।

  2. ঝুঁকি নিয়ন্ত্রণঃ স্থির স্টপ লস পয়েন্ট সেট করে প্রতিটি লেনদেনের ঝুঁকি কার্যকরভাবে নিয়ন্ত্রণ করুন।

  3. বাজারের অবস্থার সাথে খাপ খাইয়ে নেওয়া: কৌশলটি সকালে গঠিত মূল্যের ব্যাপ্তির উপর নির্ভর করে বাজারের বিভিন্ন অস্থিরতার সাথে খাপ খাইয়ে নিতে সক্ষম।

  4. অটোমেটেড এক্সিকিউশনঃ কৌশলগুলি সম্পূর্ণরূপে স্বয়ংক্রিয় লেনদেনের জন্য প্রোগ্রাম করা যেতে পারে, যা মানুষের হস্তক্ষেপ এবং মানসিক প্রভাবকে হ্রাস করে।

  5. ডে ট্রেডিংঃ দিনের শেষের আগে পজিশন বন্ধ করে রাতারাতি পজিশন হোল্ডিংয়ের ঝুঁকি এড়ানো।

  6. নমনীয়তা: কৌশলটি বিভিন্ন বাজার এবং লেনদেনের প্রকারের উপর নির্ভর করে প্যারামিটার অপ্টিমাইজ করা যায়।

কৌশলগত ঝুঁকি

  1. ভুয়া ব্রেকিংয়ের ঝুঁকিঃ বাজারে ভুয়া ব্রেকিংয়ের সম্ভাবনা রয়েছে, যার ফলে প্রায়শই স্টপ লস হয়।

  2. অস্থিরতার সীমাবদ্ধতাঃ কম অস্থিরতার সময়ে, কৌশলটি ট্রেডিং সিগন্যাল ট্রিগার করতে বা কার্যকর মুনাফা অর্জনে অসুবিধা হতে পারে।

  3. একক সময় ফ্রেমঃ কেবলমাত্র ১১ঃ০০-এর উপর নির্ভর করে গুরুত্বপূর্ণ বাজার সংক্রান্ত তথ্য উপেক্ষা করা যেতে পারে।

  4. ট্রেন্ড ট্র্যাকিংয়ের অভাবঃ কৌশলটি স্টপ কন্ডিশন সেট করে না, যা বড় ট্রেন্ডগুলিকে পুরোপুরি বুঝতে পারে না।

  5. ফিক্সড স্টপঃ উচ্চ অস্থিরতার বাজারে, ফিক্সড স্টপ খুব কাছাকাছি হতে পারে, যা লাভজনক পরিস্থিতি থেকে তাড়াতাড়ি বেরিয়ে যেতে পারে।

  6. লেনদেনের খরচঃ ঘন ঘন লেনদেনের খরচ বাড়তে পারে, যা সামগ্রিক মুনাফা প্রভাবিত করে।

কৌশল অপ্টিমাইজেশনের দিকনির্দেশনা

  1. মাল্টি-টাইম ফ্রেম বিশ্লেষণঃ ট্রেডিংয়ের সঠিকতা বাড়ানোর জন্য দীর্ঘ সময়কালের সাথে প্রবণতা বিচার করা।

  2. ডায়নামিক স্টপঃ এটিআর সূচকগুলির মতো পদ্ধতিগুলি ব্যবহার করে বিভিন্ন বাজারের ওঠানামার অবস্থার সাথে খাপ খাইয়ে নিতে ডায়নামিক স্টপ সেট করুন

  3. স্টপ মেশিন যোগ করুনঃ ঝুঁকি-লাভের অনুপাতের উপর ভিত্তি করে স্টপ শর্তগুলি সেট করুন, কৌশলটির লাভ-ক্ষতির অনুপাত উন্নত করুন।

  4. ভলিউম বিশ্লেষণঃ ভলিউম বিশ্লেষণের সাথে যুক্ত, এটি ব্রেকিং সিগন্যালের নির্ভরযোগ্যতা বাড়ায়।

  5. মার্কেট স্ট্যাটাস ফিল্টারিং: এটিআর এর মত অস্থিরতার সূচক প্রবর্তন করা, কম অস্থিরতার সময় ট্রেডিং ফ্রিকোয়েন্সি কমিয়ে আনা।

  6. প্রবেশের সময়কে অনুকূলিত করুনঃ RSI-এর মতো সূচকগুলি ব্যবহার করে ওভার-বই ওভার-সোল্ড অঞ্চলে বিপরীত ট্রেডিং বিবেচনা করুন।

  7. ট্রেন্ড ট্র্যাকিং এলিমেন্ট যুক্ত করুনঃ শক্তিশালী বিরতির সময় ট্রেন্ড ট্র্যাক করার জন্য মোবাইল স্টপ লস ব্যবহার করার কথা বিবেচনা করুন।

  8. পুনরুদ্ধার এবং প্যারামিটার অপ্টিমাইজেশনঃ বিভিন্ন প্যারামিটার সমন্বয় পুনরুদ্ধার করুন এবং সর্বোত্তম প্যারামিটার সেটিং খুঁজে বের করুন।

সারসংক্ষেপ

মর্নিং ব্রেক এবং রিভার্স কৌশল হল একটি অভ্যন্তরীণ ট্রেডিং সিস্টেম যা মূল মূল্যের ব্রেকিংয়ের উপর ভিত্তি করে। এটি 11:00 AM ব্রেকিংয়ের উচ্চ-নিম্ন পয়েন্টকে গুরুত্বপূর্ণ রেফারেন্স হিসাবে ব্যবহার করে এবং স্বল্পমেয়াদী প্রবণতাকে মূল্যের ব্রেকিংয়ের মাধ্যমে ধরা যায়। কৌশলটির সুবিধা হল নিয়মের স্বচ্ছতা, ঝুঁকি নিয়ন্ত্রণযোগ্য এবং স্বয়ংক্রিয়ভাবে কার্যকর করার জন্য উপযুক্ত। তবে এটি মিথ্যা ব্রেকিং, স্টপ-লস, এবং অন্যান্য সম্ভাব্য ঝুঁকির মুখোমুখি। বহু সময় ফ্রেম বিশ্লেষণ, গতিশীল স্টপ-লস, এবং ট্র্যাডিশনালাইজেশন ইত্যাদির মতো অপ্টিমাইজেশন ব্যবস্থাগুলি প্রবর্তন করে কৌশলটির স্থিতিশীলতা এবং লাভজনকতা আরও বাড়িয়ে তুলতে পারে। সামগ্রিকভাবে, এটি একটি ভাল ভিত্তিযুক্ত কৌশলগত কাঠামো, যা যথাযথ অপ্টিমাইজেশন এবং ঝুঁকি পরিচালনার সাথে একটি কার্যকর ট্রেডিং সরঞ্জাম হওয়ার সম্ভাবনা রয়েছে।

কৌশল সোর্স কোড
/*backtest
start: 2024-06-30 00:00:00
end: 2024-07-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Custom Strategy Nifty 50", overlay=true)

// Define the time variables
var bool morningCandleFound = false
var float morningHigh = na
var float morningLow = na
var bool inTrade = false
var int tradeDirection = 0 // 0: No trade, 1: Buy Call, -1: Buy Put
var bool noNewTrades = false // To prevent new trades after 15:15

// Identify the high and low of the 11:00 morning candle
if (hour == 11 and minute == 0)
    morningHigh := high
    morningLow := low
    morningCandleFound := true

// Plot the high and low of the 11:00 morning candle
plot(morningHigh, title="11:00 morning High", color=color.green, linewidth=2)
plot(morningLow, title="11:00 morning Low", color=color.red, linewidth=2)

// Conditions for Buy Call and Buy Put signals
var bool buyCallCondition = false
var bool buyPutCondition = false

if (morningCandleFound and (hour > 11 or (hour == 11 and minute > 0)) and not noNewTrades)
    // Check for Buy Call condition
    if (close[1] > morningHigh and close > morningHigh)
        if (not inTrade or tradeDirection != 1)
            strategy.entry("Buy Call", strategy.long, stop=morningLow)
            buyCallCondition := true
            inTrade := true
            tradeDirection := 1
            label.new(bar_index, high, "Buy Call", color=color.green)
            alert("Buy Call: Price crossed morning high", alert.freq_once_per_bar_close)
    else if (close[1] <= morningHigh)
        buyCallCondition := false

    // Check for Buy Put condition
    if (close[1] < morningLow and close < morningLow)
        if (not inTrade or tradeDirection != -1)
            strategy.entry("Buy Put", strategy.short, stop=morningHigh)
            buyPutCondition := true
            inTrade := true
            tradeDirection := -1
            label.new(bar_index, low, "Buy Put", color=color.red)
            alert("Buy Put: Price crossed morning low", alert.freq_once_per_bar_close)
    else if (close[1] >= morningLow)
        buyPutCondition := false

    // Exit conditions
    if (inTrade)
        if (tradeDirection == 1 and low <= morningLow)
            strategy.close("Buy Call")
            label.new(bar_index, low, "Exit Call", color=color.red)
            alert("Exit Call: Price fell below stop", alert.freq_once_per_bar_close)
            buyCallCondition := false
            inTrade := false
            tradeDirection := 0
        if (tradeDirection == -1 and high >= morningHigh)
            strategy.close("Buy Put")
            label.new(bar_index, high, "Exit Put", color=color.green)
            alert("Exit Put: Price rose above stop", alert.freq_once_per_bar_close)
            buyPutCondition := false
            inTrade := false
            tradeDirection := 0

// Close all positions at 15:15 and prevent new trades for the rest of the day
if (hour == 15 and minute == 15)
    strategy.close_all()
    inTrade := false
    tradeDirection := 0
    noNewTrades := true
    alert("Close All Positions at 15:15", alert.freq_once_per_bar_close)

// Reset noNewTrades at the start of a new day
if (hour == 11 and minute == 0)
    noNewTrades := false