মুভিং এভারেজ পুলব্যাক কৌশল


সৃষ্টির তারিখ: 2023-12-19 11:55:25 অবশেষে সংশোধন করুন: 2023-12-19 11:55:25
অনুলিপি: 1 ক্লিকের সংখ্যা: 719
1
ফোকাস
1621
অনুসারী

মুভিং এভারেজ পুলব্যাক কৌশল

ওভারভিউ

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

কৌশল নীতি

এই কৌশলটি মূলত দুটি চলমান গড়ের উপর ভিত্তি করে তৈরি করা হয়েছেঃ 14 তম ইএমএ এবং 56 তম এসএমএ। যখন 14 তম ইএমএ 56 তম এসএমএ অতিক্রম করে তখন একটি ক্রয় সংকেত তৈরি করে। এরপরে, কোডটি 20 তম দিকে ফিরে যায় এবং একটি নিম্ন স্তরকে সমর্থন হিসাবে খুঁজে পায়, তারপরে ফিবানাক্সি রিট্র্যাক্ট লাইনটি আঁকতে তার কাছাকাছি মূল্যের সাথে মিলিত হয়, যা 1.272x রিট্র্যাক্ট লাইনটি প্রবেশের জন্য এবং 0.618x রিট্র্যাক্ট লাইনটি প্রস্থান করার জন্য। এইভাবে, কৌশলটি খালি করার জন্য একটি প্রবেশের পয়েন্ট সেট করে, যদি দামটি সত্যই 0.618x রিট্র্যাক্ট লাইনটি অতিক্রম করে তবে এটি বন্ধ হয়ে যায়।

পুরো কৌশলটি মূলত নিম্নলিখিত কয়েকটি ধাপে বিভক্তঃ

  1. ১৪ দিনের ইএমএ, ৫৬ দিনের এসএমএ;
  2. ইএমএ-তে এসএমএ-র মাধ্যমে গোল্ডফোর্ক সংকেত প্রেরণ করা হয়েছে কিনা তা নির্ধারণ করা;
  3. আমি মনে করি, এটা আমার জন্য খুবই গুরুত্বপূর্ণ।
  4. নিম্নতম বিন্দু এবং গোল্ডেন ফোর্কের অবস্থান ব্যবহার করে ফিবোনাচি রিটার্ন লাইন আঁকুন;
  5. ১.২৭২ রান টান লাইনে একটি ফাঁকা প্রবেশ পয়েন্ট সেট করুন;
  6. 0.618 ঘন ঘন লং লাইন সেট করুন।

এই কৌশলটির মূল প্রক্রিয়া এবং কাজ করার মূলনীতি হলঃ যখন দামের একটি স্বল্পমেয়াদী বিপরীতমুখী উত্তোলন ঘটে তখন এই কৌশলটি লাভের সুযোগটি ক্যাপচার করতে পারে।

কৌশলগত সুবিধা

চলমান গড়ের এই পুনরাবৃত্তি কৌশলটির প্রধান সুবিধা হলঃ

  1. কৌশলগুলি পরিষ্কার, সহজ, সহজে বোঝা যায় এবং বাস্তবায়িত হয়।
  2. ফিবানাক্সি তত্ত্বের সাহায্যে প্রবেশ এবং বন্ধের পয়েন্ট নির্ধারণ করা হয়েছে, যা ঝুঁকি নিয়ন্ত্রণের জন্য যথেষ্ট।
  3. “আমি মনে করি, এই প্রবণতাকে আরও শক্তিশালী করে তোলার জন্য, আমরা আমাদের মূল্যবোধকে আরও উন্নত করতে পারি।
  4. শুধুমাত্র একটি চলমান গড় গোল্ডফোর্ক সংকেত প্রয়োজন যা শুরু করতে পারে, শর্তগুলি কঠোর নয়।

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

কৌশলগত ঝুঁকি

যদিও মুভিং এভারেজ রিটার্নের কৌশলটির নিজস্ব সুবিধাগুলি রয়েছে, তবে এটির কিছু ঝুঁকি রয়েছেঃ

  1. দীর্ঘমেয়াদী হোল্ডিংয়ের ফলে বড় ধরনের ক্ষতির সম্ভাবনা রয়েছে। কারণ আমরা বিপরীতমুখী মুদ্রাস্ফীতির শিকার হয়েছি, তাই যদি বাজার বৃদ্ধি অব্যাহত থাকে, তাহলে বড় ধরনের ক্ষতির সম্মুখীন হতে হবে।
  2. যদি রিটার্নের প্রস্থটি খুব ছোট হয় তবে মুনাফা অর্জন করা যায় না। যদি দামের রিটার্নের প্রস্থটি খুব ছোট হয় তবে এটি স্টপ লাইন স্পর্শ করতে পারে না এবং মুনাফা অর্জন করতে পারে না
  3. উচ্চতর সেটআপ ঝুঁকি থাকতে পারে। রিটার্ন লাইনটি খুব বেশি সেট করা হয়েছে, এটি আরবিট্রেডিংয়ের সুযোগ তৈরি করতে অ্যাক্সেসযোগ্য নয়। যুক্তিসঙ্গত রিটার্ন স্পেস গণনা করা দরকার।

উপরোক্ত ঝুঁকির জন্য, আমরা একটি সংক্ষিপ্ত স্টপ লস টাইম সেট করতে পারি, একক ক্ষতি কঠোরভাবে নিয়ন্ত্রণ করতে পারি; এবং একই সাথে রিটার্ন লাইনটির ব্যাপ্তিটি অপ্টিমাইজ করুন, যুক্তিসঙ্গত লক্ষ্যযুক্ত মুনাফা সেট করুন, যার ফলে কিছু ঝুঁকি এড়ানো যায়।

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

চলমান গড়ের এই কৌশলটি আরও অনেক উন্নতি করতে পারে, বিশেষ করে নিম্নলিখিত দিকগুলি থেকেঃ

  1. বিভিন্ন প্যারামিটার সেট পরীক্ষা করে, যেমন চলমান গড়ের সময়ের দৈর্ঘ্য, দিনের সংখ্যা, রেখাচিত্রের গুণিতক ইত্যাদি, সর্বোত্তম প্যারামিটার খুঁজে বের করতে;

২. ঝুঁকি নিয়ন্ত্রণের জন্য একাধিক বা চলমান ক্ষতি বন্ধের মাধ্যমে ক্ষতি বন্ধের ব্যবস্থা বৃদ্ধি করা।

  1. অন্য সূচকগুলির সাথে মিলিতভাবে FILTER, অপ্রয়োজনীয় বাজার পরিস্থিতিতে লেনদেন এড়াতে;

  2. তহবিল ব্যবস্থাপনা অপ্টিমাইজ করুন, যুক্তিসঙ্গত পজিশন সাইজ এবং ঝুঁকি কভারেজ সেট করুন।

এই কৌশলটি পরীক্ষা এবং প্যারামিটার অপ্টিমাইজেশনের মাধ্যমে আরও উন্নত করা যেতে পারে, যার ফলে আরও স্থিতিশীল লেনদেনের পারফরম্যান্স পাওয়া যায়।

সারসংক্ষেপ

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

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

//@version=2
strategy("MAC Pullback", overlay=true)

// Setting up timeperiod for testing
startPeriodYear = input(2014, "Backtest Start Year")
startPeriodMonth = input(1, "Backtest Start Month")
startPeriodDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(startPeriodYear, startPeriodMonth, startPeriodDay, 0, 0)

stopPeriodYear = input(2035, "Backtest Stop Year")
stopPeriodMonth = input(12, "Backtest Stop Month")
stopPeriodDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(stopPeriodYear, stopPeriodMonth, stopPeriodDay, 0, 0)

// Moving Averages
ema14 = ema(close, 14)
ema28 = ema(close, 28)
sma56 = sma(close, 56)

// Plot
plot(ema14, title="ema14", linewidth=2, color=green)
plot(ema28, title="ema28", linewidth=2, color=red)
plot(sma56, title="sma56", linewidth=3, color=blue)


// Strategy
goLong = cross(ema14, sma56) and ema14 > ema28
goShort = cross(ema14, sma56) and ema14 < ema28


// Locate Swing Lows
leftBars = input(20)
rightBars=input(20)
swinglow = pivotlow(close, leftBars, rightBars)
plot(swinglow, style=cross, linewidth=8, color=#00FF00, offset=-rightBars)

if goLong == true and time >= testPeriodStart and time <= testPeriodStop
    // We try to make sure that we're catching the first Pullback after the crossover
    if ema14[12] < sma56[12] 
        pivotpoint = lowest(40)[0] //lowest value of the month as our swing low
        
        // We calculate a Fib 1.272 extension (from the previous swing low to 
        // the crossover long entry's open) and use this as our entry target to short the Pullback
        extensiontarget = ((close[1] - pivotpoint) * 1.27) + pivotpoint
        shorttarget = ((close[1] - pivotpoint) * 0.618) + pivotpoint        
        
        strategy.order("Pullback", strategy.short, 5.0, limit=extensiontarget)
        // I would like to use a trailing stop but for know we just hope to get 
        // filled if the pullback reaches all the way down to the 0.618.
        // We also place a tight stop loss since we trying to short an uptrend
        strategy.exit("Pullback Exit", "Pullback", limit=shorttarget, loss=400)