কৌশল অনুসরণ করে হুল চলমান গড় প্রবণতা

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

সারসংক্ষেপ

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

কৌশল নীতি

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

  2. যখন সংক্ষিপ্ত সময়ের Hull MAs ক্রস, প্রবণতা বিপরীত নির্ধারণ. দীর্ঘ সময়ের প্রবণতা দিক সঙ্গে ফিল্টার।

  3. সফলভাবে ব্রেকআউট নিশ্চিত করার জন্য Hull MA শর্তের মাধ্যমে মূল্য ব্রেকআউট যোগ করুন।

  4. অপ্রয়োজনীয় ব্রেকআউট এন্ট্রি এড়াতে মূল্য পরিবর্তনের হার ফিল্টার যুক্ত করুন।

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

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

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

  1. Hull MA দামের পরিবর্তনে দ্রুত সাড়া দেয়, প্রবণতা পরিবর্তনগুলি সময়মতো ধরতে সক্ষম।

  2. ডুয়াল হুল এমএ কাঠামো দীর্ঘ এবং সংক্ষিপ্ত সময়সীমার উভয়ই প্রবণতা নির্ধারণ করতে পারে।

  3. দামের ব্রেকআউট এবং পরিবর্তনের হার ফিল্টারগুলি মিথ্যা ব্রেকআউটগুলি এড়াতে সহায়তা করে।

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

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

এই কৌশলের ঝুঁকি:

  1. অনুপযুক্ত প্যারামিটার সেটিং দামের প্রবণতা ঘুরিয়ে দিতে পারে।

  2. ভুল সামগ্রিক প্রবণতা মূল্যায়ন বিপরীত প্রবণতা ব্যবসায়ের কারণ হতে পারে।

  3. স্টপ লস সেট করা খুব বড় হলে বড় ক্ষতি হতে পারে।

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

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

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

  1. সংবেদনশীলতা এবং মসৃণতা ভারসাম্য বজায় রাখার জন্য Hull MA সময়কাল অপ্টিমাইজ করুন।

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

  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)

আরো