মাল্টি-ইএমএ, আরএসআই এবং স্ট্যান্ডার্ড ডিভিয়েশন-ভিত্তিক প্রস্থান মোমবাতি উচ্চতা ব্রেকআউট ট্রেডিং কৌশল

লেখক:চাওঝাং, তারিখ: ২০২৪-০৩-২৮ ১৬ঃ১৩ঃ৪৫
ট্যাগঃ

img

কৌশল ওভারভিউ

এই কৌশলটি সম্ভাব্য ক্রয় এবং বিক্রয় সুযোগগুলি সনাক্ত করতে একাধিক এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ), আপেক্ষিক শক্তি সূচক (আরএসআই) এবং স্ট্যান্ডার্ড ডিভিয়েশন-ভিত্তিক প্রস্থান শর্তকে একত্রিত করে। এটি বাজারের প্রবণতার দিক এবং শক্তি বিশ্লেষণের জন্য স্বল্পমেয়াদী (6, 8, 12 দিন), মাঝারি মেয়াদী (55 দিন) এবং দীর্ঘমেয়াদী (150, 200, 250 দিন) ইএমএ ব্যবহার করে। কনফিগারযোগ্য ক্রয় (30) এবং বিক্রয় (70) থ্রেশহোল্ড সহ আরএসআই, গতি নির্ধারণ এবং ওভারকপ বা ওভারসোল্ড শর্তগুলি সনাক্ত করতে ব্যবহৃত হয়। কৌশলটিতে একটি অনন্য প্রস্থান প্রক্রিয়াও রয়েছে যা যখন ক্লোজিং দামটি 12 দিনের ইএমএ থেকে একটি কনফিগারযোগ্য স্ট্যান্ডার্ড ডিভিয়েশন ব্যাপ্তি (ডিফল্ট 0.5) এ পৌঁছে যায় তখন প্ররোচিত হয়, সম্ভাব্য লাভ সুরক্ষা বা সম্ভাব্য ক্ষতি হ্রাস করার একটি পদ্ধতি সরবরাহ করে।

কৌশলগত নীতি

  1. বাজারের প্রবণতা মূল্যায়নের জন্য ভিজ্যুয়াল রেফারেন্স হিসাবে একাধিক EMA (6, 8, 12, 55, 100, 150, 200) গণনা করুন।
  2. ব্যবহারকারীর ইনপুট (3-4 মোমবাতি) এর উপর ভিত্তি করে সর্বশেষ N মোমবাতিগুলির সর্বোচ্চ উচ্চ এবং সর্বনিম্ন নিম্ন নির্ধারণ করুন।
  3. এন্ট্রি লংঃ বর্তমান বন্ধটি সাম্প্রতিক এন মোমবাতিগুলির সর্বোচ্চ উচ্চতার চেয়ে বেশি এবং ইএমএ ফিল্টারের উপরে (যদি সক্ষম করা হয়) ।
  4. এন্ট্রি শর্টঃ বর্তমান বন্ধটি সাম্প্রতিক এন মোমবাতিগুলির সর্বনিম্ন নীচের চেয়ে কম এবং ইএমএ ফিল্টারের নীচে (যদি সক্ষম করা হয়) ।
  5. এক্সটল লংঃ বর্তমান ক্লোজ ১২ দিনের ইএমএ + ০.৫ স্ট্যান্ডার্ড ডিভিয়েশন বা ১২ দিনের ইএমএ এর নিচে।
  6. এক্সাইট শর্টঃ বর্তমান বন্ধটি ১২ দিনের ইএমএ - ০.৫ স্ট্যান্ডার্ড ডিভিয়েশন বা ১২ দিনের ইএমএ এর উপরে।
  7. একটি অতিরিক্ত সূচক হিসাবে RSI ব্যবহার করুন, যার ডিফল্ট সময়কাল 14 হয়, একটি oversold threshold 30 এবং একটি oversold threshold 70 হয়।

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

  1. এটি একটি বিস্তৃত বাজার বিশ্লেষণের দৃষ্টিভঙ্গির জন্য প্রবণতা অনুসরণকারী (বহু EMAs) এবং গতি (RSI) উভয় মাত্রা একত্রিত করে।
  2. একক স্ট্যান্ডার্ড ডিভিয়েশন ভিত্তিক প্রস্থান প্রক্রিয়া লাভের সুরক্ষা এবং ঝুঁকি নিয়ন্ত্রণের ভারসাম্য বজায় রাখতে পারে।
  3. ব্যবহারকারীদের দ্বারা কনফিগারযোগ্য মূল পরামিতিগুলির সাথে অত্যন্ত মডুলারাইজড কোড শক্তিশালী নমনীয়তার জন্য।
  4. একাধিক যন্ত্র এবং সময়সীমার জন্য প্রযোজ্য, বিশেষ করে দৈনিক স্টক এবং বিটকয়েন ট্রেডিং।

ঝুঁকি বিশ্লেষণ

  1. বাজারের সংহতকরণের সময় বা প্রারম্ভিক প্রবণতা বিপরীতের সময় প্রায়শই মিথ্যা সংকেত পাওয়া যায়, যার ফলে ধারাবাহিক ক্ষতি হয়।
  2. ডিফল্ট প্যারামিটারগুলি সমস্ত বাজারের অবস্থার জন্য কার্যকর নাও হতে পারে; ব্যাকটেস্টিংয়ের ভিত্তিতে অপ্টিমাইজেশন প্রয়োজন।
  3. ট্রেডিংয়ের জন্য শুধুমাত্র এই কৌশলটির উপর নির্ভর করা ঝুঁকিপূর্ণ; সিদ্ধান্ত গ্রহণের জন্য অন্যান্য সূচক, সমর্থন / প্রতিরোধের স্তরের সাথে একত্রিত করার পরামর্শ দেওয়া হয়।
  4. হঠাৎ বড় ঘটনা দ্বারা সৃষ্ট প্রবণতা বিপরীত প্রতিক্রিয়া ধীর।

অপ্টিমাইজেশান নির্দেশাবলী

  1. EMA এবং RSI পরামিতিগুলি অপ্টিমাইজ করুনঃ যন্ত্র, সময়সীমা এবং বাজারের বৈশিষ্ট্যগুলির উপর ভিত্তি করে সর্বোত্তম পরামিতি পরিসীমাগুলির জন্য পুঙ্খানুপুঙ্খ অনুসন্ধান সম্পাদন করুন।
  2. স্টপ-লস এবং টেক-প্রফিট ব্যবস্থা চালু করুনঃ একক বাণিজ্য ঝুঁকি নিয়ন্ত্রণের জন্য ATR এর মতো অস্থিরতার সূচকগুলির সাথে যুক্তিসঙ্গত স্টপ-লস এবং টেক-প্রফিট স্তর নির্ধারণ করুন।
  3. পজিশন সাইজিং বাস্তবায়ন করুনঃ ট্রেন্ড শক্তি (যেমন, ADX) বা মূল সমর্থন / প্রতিরোধের স্তরের নিকটবর্তীতার ভিত্তিতে পজিশন সাইজগুলি সামঞ্জস্য করুন।
  4. অন্যান্য প্রযুক্তিগত সূচকগুলির সাথে একত্রিত করুনঃ যেমন বোলিঞ্জার ব্যান্ড, এমএসিডি, প্রবেশ / প্রস্থান সংকেতগুলির নির্ভরযোগ্যতা উন্নত করতে চলমান গড় ক্রসওভার।
  5. বিভিন্ন বাজারের অবস্থার জন্য অপ্টিমাইজ করুনঃ ট্রেন্ডিং, রেঞ্জিং এবং ট্রানজিশন বাজারের জন্য পৃথকভাবে সূক্ষ্ম-ট্যুন প্যারামিটার সংমিশ্রণ।

সংক্ষিপ্তসার

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


/*backtest
start: 2023-03-22 00:00:00
end: 2024-03-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Candle Height Breakout with Configurable Exit and Signal Control", shorttitle="CHB Single Signal", overlay=true)

// Input parameters for EMA filter and its length
useEmaFilter = input.bool(true, "Use EMA Filter", group="Entry Conditions")
emaFilterLength = input.int(55, "EMA Filter Length", minval=1, group="Entry Conditions")
candleCount = input.int(4, "SamG Configurable Candle Count for Entry", minval=3, maxval=4, step=1, group="Entry Conditions")
exitEmaLength = input.int(12, "Exit EMA Length", minval=1, group="Exit Conditions", defval=12)
exitStdDevMultiplier = input.float(0.5, "Exit Std Dev Multiplier", minval=0.1, maxval=2.0, step=0.1, group="Exit Conditions")

// State variables to track if we are in a long or short position
var bool inLong = false
var bool inShort = false

// Calculating EMAs with fixed periods for visual reference
ema6 = ta.ema(close, 6)
ema8 = ta.ema(close, 8)
ema12 = ta.ema(close, 12)
ema55 = ta.ema(close, 55)
ema100 = ta.ema(close, 100)
ema150 = ta.ema(close, 150)
ema200 = ta.ema(close, 200)
emaFilter = ta.ema(close, emaFilterLength)
exitEma = ta.ema(close, exitEmaLength)

// Plotting EMAs
plot(ema6, "EMA 6", color=color.red)
plot(ema8, "EMA 8", color=color.orange)
plot(ema12, "EMA 12", color=color.yellow)
plot(ema55, "EMA 55", color=color.green)
plot(ema100, "EMA 100", color=color.blue)
plot(ema150, "EMA 150", color=color.purple)
plot(ema200, "EMA 200", color=color.fuchsia)
plot(emaFilter, "EMA Filter", color=color.black)
plot(exitEma, "Exit EMA", color=color.gray)

// Calculating the highest and lowest of the last N candles based on user input
highestOfN = ta.highest(high[1], candleCount)
lowestOfN = ta.lowest(low[1], candleCount)

// Entry Conditions with EMA Filter
longEntryCondition = not inLong and not inShort and (close > highestOfN) and (not useEmaFilter or (useEmaFilter and close > emaFilter))
shortEntryCondition = not inLong and not inShort and (close < lowestOfN) and (not useEmaFilter or (useEmaFilter and close < emaFilter))

// Update position state on entry
if (longEntryCondition)
    strategy.entry("Buy", strategy.long, comment="B")
    inLong := true
    inShort := false

if (shortEntryCondition)
    strategy.entry("Sell", strategy.short, comment="S")
    inLong := false
    inShort := true

// Exit Conditions based on configurable EMA and Std Dev Multiplier
smaForExit = ta.sma(close, exitEmaLength)
upperExitBand = smaForExit + exitStdDevMultiplier * ta.stdev(close, exitEmaLength)
lowerExitBand = smaForExit - exitStdDevMultiplier * ta.stdev(close, exitEmaLength)

exitConditionLong = inLong and (close < upperExitBand or close < exitEma)
exitConditionShort = inShort and (close > lowerExitBand or close > exitEma)

// Strategy exits
if (exitConditionLong)
    strategy.close("Buy", comment="Exit")
    inLong := false

if (exitConditionShort)
    strategy.close("Sell", comment="Exit")
    inShort := false

// Visualizing entry and exit points
plotshape(series=longEntryCondition, style=shape.labelup, location=location.belowbar, color=color.green, size=size.tiny, title="Buy Signal", text="B")
plotshape(series=shortEntryCondition, style=shape.labeldown, location=location.abovebar, color=color.red, size=size.tiny, title="Sell Signal", text="S")


আরো