ইচিমোকু কুমো টুইস্ট গোল্ড-অ্যাসোসিভিং কৌশল

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

img

সারসংক্ষেপ

ইচিমোকু কুমো টুইস্ট সোনার শোষণ কৌশল একটি পরিমাণগত ট্রেডিং কৌশল যা ইচিমোকু বাজার প্রযুক্তিগত সূচক এবং পরিসীমা ফিল্টারিংকে একত্রিত করে। এটি বাজারের প্রবণতা এবং গুরুত্বপূর্ণ সমর্থন এবং প্রতিরোধের স্তরগুলি নির্ধারণের জন্য ইচিমোকু সূচক ব্যবহার করে, ট্রেডিং সংকেত উত্পন্ন করার জন্য মোমবাতি নিদর্শনগুলির সাথে। এদিকে, পরিসীমা ফিল্টারিং ট্রেডিং ফ্রিকোয়েন্সি এবং ঝুঁকি নিয়ন্ত্রণে সহায়তা করে।

কৌশল নীতি

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

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

সুবিধা বিশ্লেষণ

  • বাজারের প্রবণতা বিচার করতে Ichimoku সূচক ব্যবহার করুন, সংবেদনশীলতা জন্য সামঞ্জস্যযোগ্য পরামিতি
  • ক্যান্ডেলস্টাইল প্যাটার্ন স্বীকৃতি থেকে স্পষ্ট ট্রেডিং সংকেত
  • তারিখ পরিসীমা ফিল্টার ট্রেডিং ফ্রিকোয়েন্সি নিয়ন্ত্রণ করে
  • ঝুঁকি হ্রাসের জন্য সময়মত স্টপ লস সেটিং

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

  • ইচিমোকু পিছিয়ে পড়লে দ্রুত পরিবর্তনশীল প্রবণতা মিস করতে পারে
  • তারিখ পরিসীমা ফিল্টার কিছু ট্রেডিং সুযোগ মিস করতে পারে
  • ভুল স্টপ লস সেটিং ক্ষতি বাড়াতে পারে

ইচিমোকু পরামিতিগুলি সামঞ্জস্য করার, তারিখের পরিসীমা অপ্টিমাইজ করার, স্টপ লস পয়েন্টগুলি সংশোধন করার মতো পদ্ধতিগুলি ঝুঁকিগুলি উন্নত এবং নিয়ন্ত্রণ করতে পারে।

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

  • সর্বোত্তম ইচিমোকু কনফিগারেশন খুঁজে পেতে বিভিন্ন পরামিতি সমন্বয় পরীক্ষা করুন
  • Ichimoku বিলম্ব সমস্যা এড়াতে অন্যান্য সূচক সঙ্গে একত্রিত করুন
  • তারিখ পরিসীমা সেটিংস অপ্টিমাইজ করার জন্য ব্যাকটেস্ট
  • শর্তাধীন গতিশীল ট্রেলিং স্টপ লস সেট করুন

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

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


/*backtest
start: 2023-11-20 00:00:00
end: 2023-11-27 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Ichimoku Kumo Twist Strategy (Presets)", shorttitle="Kumo Twist Strategy", overlay=true)

xlowest_(src, len) =>
    x = src
    for i = 1 to len - 1
        v = src[i]
        if (na(v))
            break
        x := min(x, v)
    x

xlowest(src, len) =>
    na(src[len]) ? xlowest_(src, len) : lowest(src, len)

xhighest_(src, len) =>
    x = src
    for i = 1 to len - 1
        v = src[i]
        if (na(v))
            break
        x := max(x, v)
    x

xhighest(src, len) =>
    na(src[len]) ? xhighest_(src, len) : highest(src, len)

dropn(src, n) =>
    na(src[n]) ? na : src

ichiConversionPeriods(presets) =>
    if presets == "Cpt 20 60 120 30"
        20
    else
        if presets == "Cpt 10 30 60 30"
            10
        else
            if presets == "Std 18 52 104 26"
                18
            else
                9

ichiBasePeriods(presets) =>
    if presets == "Cpt 20 60 120 30"
        60
    else
        if presets == "Cpt 10 30 60 30"
            30
        else
            if presets == "Std 18 52 104 26"
                52
            else
                26

ichiLaggingSpan2Periods(presets) =>
    if presets == "Cpt 20 60 120 30"
        120
    else
        if presets == "Cpt 10 30 60 30"
            60
        else
            if presets == "Std 18 52 104 26"
                104
            else
                52

ichiDisplacement(presets) =>
    if presets == "Cpt 20 60 120 30"
        30
    else
        if presets == "Cpt 10 30 60 30"
            30
        else
            if presets == "Std 18 52 104 26"
                26
            else
                26

scaling = input(title="Scaling", options=["Linear", "Log"], defval="Linear")
presets = input(title="Presets", options=["Cpt 20 60 120 30", "Cpt 10 30 60 30", "Std 18 52 104 26", "Std 9 26 52 26"], defval="Cpt 20 60 120 30")
dropCandles = input(1, minval=0, title="Drop first N candles")
showClouds = input(false, "Show Clouds")
stoploss = input(true, title="Stop Loss")

conversionPeriods = ichiConversionPeriods(presets)
basePeriods = ichiBasePeriods(presets)
laggingSpan2Periods = ichiLaggingSpan2Periods(presets)
displacement = ichiDisplacement(presets)
logScaling = scaling == "Log"

lows = dropn(low, dropCandles)
highs = dropn(high, dropCandles)

lowsp = logScaling ? log(lows) : lows
highsp = logScaling ? log(highs) : highs

donchian(len) =>
    avg(xlowest(lowsp, len), xhighest(highsp, len))

conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

// === BACKTEST RANGE ===
FromMonth = input(defval = 10, title = "From Month", minval = 1)
FromDay   = input(defval = 3, title = "From Day", minval = 1)
FromYear  = input(defval = 2017, title = "From Year", minval = 2014)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2014)

golong = crossover(leadLine1, leadLine2)
goshort = crossunder(leadLine1, leadLine2)

strategy.entry("Buy", strategy.long, when=(golong and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))
strategy.entry("Sell", strategy.short, when=(goshort and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))

conversionLinep = logScaling ? exp(conversionLine) : conversionLine
baseLinep = logScaling ? exp(baseLine) : baseLine
leadLine1p = logScaling ? exp(leadLine1) : leadLine1
leadLine2p = logScaling ? exp(leadLine2) : leadLine2

plot(showClouds ? conversionLinep : na, color=#0496ff, title="Conversion Line")
plot(showClouds ? baseLinep : na, color=#991515, title="Base Line")

p1 = plot(showClouds ? leadLine1p : na, offset = displacement, color=green, title="Lead 1")
p2 = plot(showClouds ? leadLine2p : na, offset = displacement, color=red, title="Lead 2")
fill(p1, p2, color = showClouds ? (leadLine1p > leadLine2p ? green : red) : na)


আরো