অভিযোজিত মূল্য চ্যানেল কৌশল


সৃষ্টির তারিখ: 2023-12-04 16:33:45 অবশেষে সংশোধন করুন: 2023-12-04 16:33:45
অনুলিপি: 0 ক্লিকের সংখ্যা: 634
1
ফোকাস
1619
অনুসারী

অভিযোজিত মূল্য চ্যানেল কৌশল

ওভারভিউ

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

কৌশল নীতি

  1. সর্বশেষ দৈর্ঘ্যের মূল K লাইনের সর্বোচ্চ মূল্য ((HH) এবং সর্বনিম্ন মূল্য ((LL) । একই সাথে দৈর্ঘ্যের মূল K লাইনের ATR গণনা করুন ।

  2. দামের উত্থান এবং পতনের উপর ভিত্তি করে + ডিআই এবং -ডিআই গণনা করুন, তারপরে এডিএক্স গণনা করুন।

  3. যদি ADX < 25 হয়, তাহলে এটিকে একটি সমন্বিত বাজার হিসাবে বিবেচনা করা হয়। এই সময়ে যদি সমাপ্তির মূল্য মূল্যের চ্যানেলের উপরের সীমার উপরে থাকে তবে HH - ATR গুণিতক*ATR), আরও বেশি করুন; যদি বন্ধের দাম দামের চ্যানেলের নীচের সীমার নিচে থাকে (LL + ATR গুণিতক)*এটিআর (ATR) ।

  4. যদি ADX>=25 এবং +DI>-DI হয়, তবে এটি একটি ষাঁড়ের বাজার বলে বিবেচিত হবে। এই সময়ে যদি সমাপ্তির মূল্য মূল্যের চ্যানেলের উপরের সীমা থেকে বেশি হয়, তবে আরও কিছু করুন।

  5. যদি ADX>=25 এবং +DI<-DI হয়, তাহলে এটিকে খালি বাজার হিসাবে বিবেচনা করা হয়। এই সময়ে যদি ক্লোজ-অফ মূল্যটি মূল্যের চ্যানেলের নীচের সীমার নীচে থাকে তবে খালি করা হয়।

  6. পজিশনে প্রবেশের পর, যদি exit_lengthরুট K লাইন অতিক্রম করে তবে পজিশন বন্ধ করতে হবে।

সামর্থ্য বিশ্লেষণ

  1. এই কৌশলটি বাজারের অবস্থার সাথে স্বয়ংক্রিয়ভাবে খাপ খাইয়ে নিতে পারে। বাজারের সমন্বয় করার জন্য মূল্য চ্যানেল কৌশল ব্যবহার করা হয়, ট্রেন্ডিং বাজারে ট্রেন্ডিং দিক অনুসরণ করে

  2. এটিআর এবং এডিএক্স সূচকের ব্যবহার কৌশলটির স্বনির্ধারিততা নিশ্চিত করে। এটিআর মূল্য চ্যানেলের প্রস্থকে সামঞ্জস্য করার জন্য ব্যবহৃত হয়, এডিএক্স বাজারের প্রবণতা নির্ধারণের জন্য ব্যবহৃত হয়।

  3. কন্ট্রোল লস ম্যানেজমেন্ট কৌশলকে স্থিতিশীল করে তোলে।

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

  1. এডিএক্সের সিদ্ধান্তে ভুল সিগন্যালের সম্ভাবনা বেশি।

  2. এটিআর এবং এডিএক্স সূচকগুলি ভুলভাবে সেট করা থাকলে কৌশলটি কার্যকর হতে পারে না।

  3. এই পরিস্থিতিতে, আপনি যদি আপনার ব্যবসায়ের মূলধনকে হ্রাস করতে চান তবে আপনি এটিকে হ্রাস করতে পারবেন না।

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

  1. এটিআর এবং এডিএক্স সূচকগুলির প্যারামিটারগুলিকে অপ্টিমাইজ করুন যাতে স্ব-অনুসরণ আরও ভাল হয়।

  2. ক্ষতির ঝুঁকি কমাতে স্টপ লিনার বাড়ানো।

  3. Add filter condition ত্রুটি বার্তা ফিল্টার করুন।

সারসংক্ষেপ

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

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

//@version=5
strategy("Adaptive Price Channel Strategy", overlay=true)

length = input(20, title="Length")
exit_length = input(10, title="Exit After X Periods")
atr_multiplier = input(3.2, title="ATR Multiplier")

startDate = input(defval = timestamp("2019-01-15T08:15:15+00:00"), title = "Start Date")
endDate = input(defval = timestamp("2033-04-01T08:15:00+00:00"), title = "End Date")

hh = ta.highest(high, length)
ll = ta.lowest(low, length)
atr = ta.atr(length)

// calculate +DI and -DI
upMove = high - high[1]
downMove = low[1] - low
plusDM = na(upMove[1]) ? na : (upMove > downMove and upMove > 0 ? upMove : 0)
minusDM = na(downMove[1]) ? na : (downMove > upMove and downMove > 0 ? downMove : 0)
plusDI = ta.rma(plusDM, length) / atr * 100
minusDI = ta.rma(minusDM, length) / atr * 100

// calculate ADX
dx = math.abs(plusDI - minusDI) / (plusDI + minusDI) * 100
adx = ta.rma(dx, length)

var int barSinceEntry = na

if (not na(close[length]) )
    if (adx < 25) // Sideways market
        if (close > hh - atr_multiplier * atr)
            strategy.entry("PChLE", strategy.long, comment="PChLE")
            barSinceEntry := 0
        else if (close < ll + atr_multiplier * atr)
            strategy.entry("PChSE", strategy.short, comment="PChSE")
            barSinceEntry := 0
    else if (adx >= 25 and plusDI > minusDI) // Bullish market
        if (close > hh - atr_multiplier * atr)
            strategy.entry("PChLE", strategy.long, comment="PChLE")
            barSinceEntry := 0
    else if (adx >= 25 and plusDI < minusDI) // Bearish market
        if (close < ll + atr_multiplier * atr)
            strategy.entry("PChSE", strategy.short, comment="PChSE")
            barSinceEntry := 0

if (na(barSinceEntry))
    barSinceEntry := barSinceEntry[1] + 1
else if (barSinceEntry >= exit_length)
    strategy.close("PChLE")
    strategy.close("PChSE")
    barSinceEntry := na

plot(hh, title="Highest High", color=color.green, linewidth=2)
plot(ll, title="Lowest Low", color=color.red, linewidth=2)