হাল মুভিং এভারেজের উপর ভিত্তি করে ট্রেন্ড অনুসরণ কৌশল


সৃষ্টির তারিখ: 2023-09-19 16:40:00 অবশেষে সংশোধন করুন: 2023-09-19 16:40:00
অনুলিপি: 1 ক্লিকের সংখ্যা: 638
1
ফোকাস
1617
অনুসারী

ওভারভিউ

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

কৌশল নীতি

  1. স্বল্পকালীন এবং দীর্ঘকালীন দুটি গ্রুপের জন্য হালের চলমান গড় গণনা করুন। স্বল্পকালীন নির্দিষ্ট ট্রেডিংয়ের দিকনির্দেশনা, দীর্ঘকালীন বড় প্রবণতার দিকনির্দেশনা।

  2. যখন একটি স্বল্প সময়ের হুল এমএ-র উপর পেরিয়ে যায়, তখন ট্রেন্ডের বিপরীত হওয়ার সিদ্ধান্ত নেওয়া হয়।

  3. Hull MA-এর বিভাজন নিশ্চিত করতে দাম বাড়ানো।

  4. দামের পরিবর্তনের হার বাড়ানোর জন্য শর্তাবলী যুক্ত করা হয়েছে, যাতে অযাচিত ব্রেকডাউন এড়ানো যায়।

  5. স্টপ লস এবং স্টপ কন্ডিশন সেট করুন এবং ঝুঁকি নিয়ন্ত্রণ করুন।

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

সাধারণ চলমান গড়ের তুলনায় এই কৌশলটির নিম্নলিখিত সুবিধাগুলি রয়েছেঃ

  1. Hull MA মূল্যের পরিবর্তনের প্রতি দ্রুত প্রতিক্রিয়া দেখায় এবং ট্রেন্ডের বিপর্যয়কে সময়মতো ধরতে পারে।

  2. ডাবল হুল এমএ কাঠামোটি বড় এবং ছোট দুটি সময়ের মাত্রার প্রবণতা নির্ধারণ করতে পারে।

  3. দামের ব্রেকআউট এবং পরিবর্তনের হারের শর্তগুলি কার্যকরভাবে জাল ব্রেকআউটগুলি ফিল্টার করতে পারে।

  4. ডায়নামিক স্টপ লস স্টপ লকিং লভ্যাংশ এবং কন্ট্রোলিং ঝুঁকি।

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

এই কৌশলটি নিম্নলিখিত ঝুঁকিগুলিও বহন করেঃ

  1. প্যারামিটার সেট করা ভুল হলে দামের প্রবণতা পাল্টে যেতে পারে।

  2. বিপরীতমুখী ট্রেডিংয়ের কারণ হতে পারে বড় প্রবণতা সম্পর্কে ভুল ধারণা।

  3. স্টপ লস সেট ওভার ওয়াইড করলে ক্ষতির সম্ভাবনা বেশি থাকে।

  4. ট্রেডিংয়ের খরচ বাড়াতে এবং ঝুঁকিতে ফেলতে ট্রেডিংয়ের ঘন ঘনতা বাড়ায়।

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

এই ক্ষেত্রে, নিম্নলিখিত দিকগুলি অপ্টিমাইজ করা যেতে পারেঃ

  1. হাল এমএ চক্রের অপ্টিমাইজেশন, সংবেদনশীলতা এবং মসৃণতা ভারসাম্য।

  2. Entry এবং Exit এর প্যারামিটার অপ্টিমাইজ করুন এবং সর্বোত্তম মান খুঁজে বের করুন।

  3. বিভিন্ন জাতের প্যারামিটারগুলির দৃঢ়তা পরীক্ষা করা এবং কৌশলগত অভিযোজনশীলতা উন্নত করা।

  4. সংযোজনীয় ক্ষমতার পরিমাপ, বিপর্যয়ের ঝুঁকি এড়ানো।

  5. “এটা আমাদের জন্য অনেক বড় একটা চ্যালেঞ্জ।

সারসংক্ষেপ

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

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

//@version=2
//SeaSide420
strategy("SS420FX", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=720, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
q=input(title="HullMA Short",defval=14)
z=input(title="HullMA Long",defval=14)
dt = input(defval=0.0010, title="Decision Threshold", type=float, step=0.0001)
SL = input(defval=-50000.00, title="Stop Loss in $", type=float, step=1)
TP = input(defval=100000.00, title="Target Point in $", type=float, step=1)
ot=1
n2ma=2*wma(close,round(q/2))
nma=wma(close,q)
diff=n2ma-nma
sqn=round(sqrt(q))
n2ma1=2*wma(close[1],round(q/2))
nma1=wma(close[1], q)
diff1=n2ma1-nma1
sqn1=round(sqrt(q))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
z2ma=2*wma(close[11],round(z/2))
zma=wma(close[11],z)
ziff=n2ma-nma
zqn=round(sqrt(z))
z2ma1=2*wma(close[12],round(z/2))
zma1=wma(close[12], z)
ziff1=n2ma1-nma1
zqn1=round(sqrt(z))
z1=wma(diff,sqn)
z2=wma(diff1,sqn)
z1e=z1>z2?green:black
z2e=z1>z2?black:red
z3e=z1>z2?green:red
n1e=plot(z1, title="HMA1", color=z1e, linewidth=2, offset=2)
n2e=plot(z2, title="HMA2", color=z2e, linewidth=2, offset=2)
fill(n1e, n2e, color=z3e, transp=80)
confidence=(security(syminfo.tickerid, 'D', close)-security(syminfo.tickerid, 'D', close[1]))/security(syminfo.tickerid, 'D', close[1])
closelong = n1<n2 and close<n2 and confidence<dt or strategy.openprofit<SL or strategy.openprofit>TP
if (closelong)
    strategy.close("Long")
closeshort = n1>n2 and close>n2 and confidence>dt or strategy.openprofit<SL or strategy.openprofit>TP
if (closeshort)
    strategy.close("Short")
longCondition = n1>n2 and z1>z2 and strategy.opentrades<ot and confidence>dt and close>n1
if (longCondition)
    strategy.entry("Long",strategy.long)
shortCondition = n1<n2 and z1<z2 and strategy.opentrades<ot and confidence<dt and close<n1 
if (shortCondition)
    strategy.entry("Short",strategy.short)