পরিবর্তনশীল মুভিং এভারেজ ট্রেডিংVMA কৌশল


সৃষ্টির তারিখ: 2024-02-21 11:47:43 অবশেষে সংশোধন করুন: 2024-02-21 11:47:43
অনুলিপি: 2 ক্লিকের সংখ্যা: 828
1
ফোকাস
1617
অনুসারী

পরিবর্তনশীল মুভিং এভারেজ ট্রেডিংVMA কৌশল

ওভারভিউ

ট্রেডিং ভিএমএ কৌশলটি একটি পরিবর্তনশীল চলমান গড়ের উপর ভিত্তি করে একটি পরিমাণগত ট্রেডিং কৌশল। এই কৌশলটি বাজারের প্রবণতা ক্যাপচার করার জন্য পরিবর্তিত চলমান গড় ব্যবহার করে এবং এর ভিত্তিতে একটি ট্রেডিং সংকেত তৈরি করে।

কৌশল নীতি

ট্রেডিং ভিএমএ কৌশলটির কেন্দ্রবিন্দু হল পরিবর্তনশীল দৈর্ঘ্যের একটি চলমান গড় গণনা করা। একটি চলমান গড় একটি বিখ্যাত প্রযুক্তিগত সূচক যা একটি নির্দিষ্ট সময়ের মধ্যে গড় মূল্য গণনা করে। ট্রেডিং ভিএমএ কৌশল দ্বারা ব্যবহৃত ভিএমএর পরিবর্তনশীল দৈর্ঘ্যের থাকে।

বিশেষত, এই কৌশলটি প্রথমে একটি মধ্যবর্তী পরিমাপের একটি সিরিজ গণনা করে, যেমন দামের দিকনির্দেশের গতির সূচক ((PDM, MDIM), মসৃণভাবে প্রক্রিয়াজাত করা ডেটা ((PDMs, MDMs)) । এই ডেটাগুলি শেষ পর্যন্ত সূচকের শক্তি ((iS) পাওয়ার জন্য ব্যবহৃত হয়।

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

অবশেষে, কৌশলটি বর্তমান মূল্যের সাথে VMA এর আকারের তুলনা করে, একটি ট্রেডিং সংকেত তৈরি করে। VMA এর চেয়ে বেশি দামের সাথে আরও বেশি, VMA এর চেয়ে কম দামের সাথে খালি।

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

ট্রেডিং ভিএমএ কৌশলগুলির প্রধান সুবিধা হলঃ

  1. পরিবর্তনশীল চক্র Filters Noise আরো স্থিতিশীল - পরিবর্তনশীল চলমান গড় চক্র বাজার পরিবর্তনের সাথে সামঞ্জস্য করে, যা তরঙ্গের শব্দকে ফিল্টার করে এবং আরও স্থিতিশীল প্রবণতা সংকেত পায়।

  2. দ্রুত প্রতিক্রিয়া মূল্য পরিবর্তনের Improves Responsiveness - ভেরিয়েবল মুভিং এভারেজ দ্রুত মূল্য পরিবর্তনের প্রতিক্রিয়া জানায় এবং নতুন প্রবণতার বিপরীত পয়েন্ট ক্যাপচার করে।

  3. Reduce Overtrading - ট্রেডিং ভিএমএ ফিক্সড-চক্র সূচকগুলির তুলনায় অপ্রয়োজনীয় ব্যবসায়ের সংখ্যা হ্রাস করতে পারে।

  4. কাস্টমাইজযোগ্য প্যারামিটার Flexible Parameters - এই নীতিটি ব্যবহারকারীদের তাদের পছন্দ অনুসারে প্যারামিটার নির্বাচন করার অনুমতি দেয়, যা বিভিন্ন বাজারের পরিস্থিতির সাথে খাপ খায়।

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

ট্রেডিং ভিএমএ কৌশলগুলি নিম্নলিখিত প্রধান ঝুঁকির সাথে জড়িতঃ

  1. Miss Rapid Reversals - যখন প্রবণতা দ্রুত বিপরীত হয়, তখন ক্রমাগত সমন্বয় করা চলমান গড়ের প্রতিক্রিয়া বিলম্বিত হতে পারে।

  2. Lagging Bias - সমস্ত মুভিং এভারেজ কৌশলগুলির একটি নির্দিষ্ট পরিমাণে Lagging Bias থাকে।

  3. ভুল ফাঁকা সংকেত - ট্রেডিং ভিএমএ ভুল ফাঁকা সংকেত তৈরি করতে পারে।

  4. প্যারামিটার অপ্টিমাইজেশান অসুবিধা - সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে পাওয়া কঠিন হতে পারে।

স্টপ লস, প্যারামিটার সমন্বয় ইত্যাদির মাধ্যমে এই ঝুঁকিগুলি নিয়ন্ত্রণ করা যায়।

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

ট্রেডিং ভিএমএ কৌশলটি নিম্নলিখিত দিকগুলি থেকেও অপ্টিমাইজ করা যেতে পারেঃ

  1. Combine Other Indicators - অন্যান্য প্রবণতা, প্রবণতা বিপরীত ইত্যাদির সাথে সূচকগুলির সংমিশ্রণ ব্যবহার করে সংকেতের গুণমান উন্নত করা যেতে পারে।

  2. প্যারামিটার অপ্টিমাইজেশান - ঐতিহাসিক পুনরাবৃত্তি এবং প্যারামিটার অপ্টিমাইজেশনের মাধ্যমে সর্বোত্তম প্যারামিটার সমন্বয় খুঁজে বের করা।

  3. অ্যাডাপ্টিভ ট্রেডিং রুলস (Adaptive Trading Rules) - বিভিন্ন বাজারের অবস্থার উপর ভিত্তি করে বিভিন্ন পজিশন খোলার নিয়ম, স্টপ লস নিয়ম ইত্যাদি।

  4. অ্যালগরিদম ট্রেডিং সিস্টেমাইজেশন - কৌশলগুলিকে অ্যালগরিদমাইজড এবং সিস্টেমাইজড করে, যাতে এটি পুনরুদ্ধার এবং অপ্টিমাইজেশন করা যায়।

সারসংক্ষেপ

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

কৌশল সোর্স কোড
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-24 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © laptevmaxim92

//@version=4
strategy("Variable Moving Average Strategy", overlay=true)

src=close
l =input(5, title="VMA Length") 
std=input(true, title="Show Trend Direction Colors")

utp = input(false, "Use take profit?")
pr = input(100, "Take profit pips")
usl = input(false, "Use stop loss?")
sl = input(100, "Stop loss pips")
fromday = input(01, defval=01, minval=01, maxval=31, title="From Day")
frommonth = input(01, defval=01, minval= 01, maxval=12, title="From Month")
fromyear = input(2000, minval=1900, maxval=2100, title="From Year")
today = input(31, defval=01, minval=01, maxval=31, title="To Day")
tomonth = input(12, defval=12, minval=01, maxval=12, title="To Month")
toyear = input(2019, minval=1900, maxval=2100, title="To Year")

use_date = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 00, 00))

k = 1.0/l
pdm = 0.0
pdm := max((src - src[1]), 0)
mdm = 0.0
mdm := max((src[1] - src), 0)
pdmS = 0.0
pdmS := ((1 - k)*nz(pdmS[1]) + k*pdm)
mdmS = 0.0
mdmS := ((1 - k)*nz(mdmS[1]) + k*mdm)
s = pdmS + mdmS
pdi = pdmS/s
mdi = mdmS/s
pdiS = 0.0
pdiS := ((1 - k)*nz(pdiS[1]) + k*pdi)
mdiS = 0.0
mdiS := ((1 - k)*nz(mdiS[1]) + k*mdi)
d = abs(pdiS - mdiS)
s1 = pdiS + mdiS
iS = 0.0
iS := ((1 - k)*nz(iS[1]) + k*d/s1)
hhv = highest(iS, l) 
llv = lowest(iS, l) 
d1 = hhv - llv
vI = (iS - llv)/d1
vma = 0.0
vma := (1 - k*vI)*nz(vma[1]) + k*vI*src
vmaC=(vma > vma[1]) ? color.lime : (vma<vma[1]) ? color.red : (vma==vma[1]) ? color.yellow : na 
plot(vma, color=std?vmaC:color.white, linewidth=3, title="VMA")

longCondition = vma > vma[1]
if (longCondition)
    strategy.entry("BUY", strategy.long and use_date)

shortCondition = vma < vma[1]
if (shortCondition)
    strategy.entry("SELL", strategy.short and use_date)

if (utp and not usl)
    strategy.exit("TP", "BUY", profit = pr)
    strategy.exit("TP", "SELL", profit = pr)
    
if (usl and not utp)
    strategy.exit("SL", "BUY", loss = sl)
    strategy.exit("SL", "SELL", loss = sl)
    
if (usl and utp)
    strategy.exit("TP/SL", "BUY", loss = sl, profit = pr)
    strategy.exit("TP/SL", "SELL", loss = sl, profit = pr)