কৌশল অনুসরণ করে ভর্টেক্স অস্সিলেটর ট্রেন্ড

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

img

সারসংক্ষেপ

ভর্টেক্স অ্যাসিললেটর ট্রেন্ড অনুসরণকারী কৌশলটি ভর্টেক্স সূচক উপর ভিত্তি করে একটি ট্রেন্ড ট্র্যাকিং কৌশল। এটি সম্ভাব্য মূল্য প্রবণতা সনাক্ত করতে ভর্টেক্স সূচক নির্মাণের জন্য একাধিক সময়সীমার চলমান গড় ব্যবহার করে এবং কম ঝুঁকিপূর্ণ ট্রেন্ড ট্র্যাকিং অপারেশন অর্জনের জন্য সহায়ক রায় হিসাবে একটি স্বল্প-অবধি চলমান গড়ের সাথে একত্রিত হয়।

কৌশল নীতি

এই কৌশলটির মূল সূচক হ'ল ভর্টেক্স সূচক। ভর্টেক্স সূচকটি একাধিক সময়সীমার স্বল্পমেয়াদী, মধ্যমেয়াদী এবং দীর্ঘমেয়াদী চলমান গড়ের সমন্বয়ে গঠিত। বিশেষত, কৌশলটি 6 দিন, 27 দিন, 72 দিন এবং 234 দিনের চলমান গড় ব্যবহার করে। স্বল্পমেয়াদী চলমান গড় দামের সর্বশেষ প্রবণতা প্রতিফলিত করে, যখন দীর্ঘমেয়াদী চলমান গড় দীর্ঘমেয়াদী প্রবণতা প্রতিফলিত করে। সূচকের মূল যুক্তিটি হ'ল যখন স্বল্পমেয়াদী চলমান গড় দীর্ঘমেয়াদী চলমান গড়ের উপরে অতিক্রম করে, তখন এটি নির্দেশ করে যে আপসাইড গতি বাড়ছে এবং এটি কেনার সময়। যখন স্বল্পমেয়াদী চলমান গড় দীর্ঘমেয়াদী চলমান গড়ের নীচে অতিক্রম করে, এটি নির্দেশ করে যে আপসাইড গতি হ্রাস পাচ্ছে এবং আমাদের বিক্রি করা উচিত।

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

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

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

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

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

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

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

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

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

  1. সূচকগুলির গোলমাল প্রতিরোধের এবং অপারেশন সংবেদনশীলতা উন্নত করতে চলমান গড় পরামিতিগুলি অনুকূল করুন। মসৃণ কিন্তু সংবেদনশীল সূচকগুলি নির্বাচন করতে দৈর্ঘ্যের জন্য বিভিন্ন পরামিতি সংমিশ্রণ চেষ্টা করুন।

  2. স্টপ লস মেকানিজম যুক্ত করুন। যখন দামগুলি আরও ক্ষতি এড়াতে প্রতিকূল দিকগুলিতে মূল সমর্থন স্তরগুলি ভেঙে দেয় তখন স্টপ লস পয়েন্টগুলি সেট করুন।

  3. কৌশল স্থিতিশীলতা বৃদ্ধি করার জন্য অন্যান্য সূচক বিচার অন্তর্ভুক্ত করুন, উদাহরণস্বরূপ, শুধুমাত্র যখন ট্রেডিং ভলিউম প্রসারিত হয় তখন সংকেত গ্রহণ করুন।

  4. বাজারের বিভিন্ন পর্যায়ে ভিত্তি করে বিভিন্ন প্যারামিটার সেট ব্যবহার করুন। উদাহরণস্বরূপ, ষাঁড়ের বাজারের সময় আরও আক্রমণাত্মক প্যারামিটার এবং ভালুকের বাজারে আরও স্থিতিশীল সেটিংস।

সিদ্ধান্ত

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


/*backtest
start: 2022-11-30 00:00:00
end: 2023-12-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//swap strategy line for study line to enable backtesting
strategy(title="Vortex Ocillator" )
//study(title = "Vortex Oscillator", precision = 6)

// Component Code Start
// Example usage:
// if testPeriod()
//   strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2048, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() => true
// Component Code Stop

//vortex histogram
short_input = input(6, minval = 1)
long_input = input(27, minval = 1)
longer_input = input(72, minval = 1)
longest_input = input(234, minval = 1)

short = sma(close, short_input)
long = sma(close, long_input)
longer = sma(close, longer_input)
longest = sma(close, longest_input)

hist = short - long
longhist = short - longer
longesthist = short - longest

hist_fractal = input(3, minval = 0)
longhist_fractal = input(2, minval = 0)
longesthist_fractal = input(4, minval = 0)

vortexhist = avg((hist / hist_fractal), (longhist / longhist_fractal), (longesthist / longesthist_fractal))

crossover_calc = vortexhist > 0 and vortexhist[1] < 0
crossunder_calc = vortexhist < 0 and vortexhist[1] > 0

crossover2 = crossover(vortexhist, 0)
crossunder2 = crossunder(vortexhist, 0)

hist_color = hist > 0? fuchsia : purple
longhist_color = longhist > 0? olive : orange
longesthist_color = longesthist > 0? teal : blue
vortexhist_color = vortexhist >= 0? green : red

plot(longesthist, "Longest Ocillator", style = histogram, color = longesthist_color, transp = 5)
plot(longhist, "Longer Ocillator", style = histogram, color = longhist_color, transp = 30)
plot(hist, "Short Ocillator", style = histogram, color = hist_color, transp = 30)
plot(vortexhist, "Vortex Ocillator", style = columns, color = vortexhist_color, transp = 40)
plotshape(crossover_calc,title = "Crossover",location = location.bottom, style = shape.triangleup, size = size.small, color = green)
plotshape(crossunder_calc,title = "Crossunder",location = location.bottom, style = shape.triangledown, size = size.small, color = red)

//micro
micro_ema_length = input(6,"Micro EMA Length")
micro = ema(vortexhist, micro_ema_length)
plot(micro, title = "micro", linewidth = 1, color = white)
microup = crossover(vortexhist, micro)
microdown = crossunder(vortexhist, micro)

//new micro signals
xmicroup = microup and vortexhist >=0 or crossover_calc
xmicrodown = microdown and vortexhist >=0 or crossunder_calc
plotshape(xmicroup, title = "Micro up", style = shape.circle, color = olive, location = location.bottom, size = size.tiny)
plotshape(xmicrodown, title = "Micro down", style = shape.circle, color = fuchsia, location = location.bottom, size = size.tiny)

//optional strategy options for backtesting, comment out the alertcondition rows and swap the top study row for the strategy row to compile as strategy
if testPeriod()
    strategy.entry("buy", true, 1, when = xmicroup, limit = low)
if testPeriod()
    strategy.close("buy", when = xmicrodown)

   

//if (xmicroup)
    //strategy.entry("My Long Entry Id", strategy.long)
//if (xmicroup)
    //strategy.exit("My Short Exit Id", "My Short Entry Id")
//if (xmicrodown)
    //strategy.exit("My Long Exit Id", "My Long Entry Id")

  




আরো