ডাবল মুভিং এভারেজ এবং এমএসিডি সংমিশ্রণ ট্রেডিং কৌশল একটি পরিমাণগত ট্রেডিং কৌশল যা ট্রেড সিগন্যাল উত্পাদন এবং বৈধকরণের জন্য উভয় চলমান গড় এবং গতির সূচক ব্যবহার করে। চলমান গড়ের প্রবণতা অনুসরণ করার ক্ষমতা এবং এমএসিডি এর গতির বৈশিষ্ট্যকে একত্রিত করে, এই কৌশলটি কঠোর প্রবেশ এবং প্রস্থান মানদণ্ডের মাধ্যমে বাজারের প্রবণতার রূপরেখা কার্যকরভাবে ধরতে পারে, যখন সংকীর্ণ মুনাফা পরিসীমা বা বাজার ওঠানামের ঝুঁকি এড়ানো যায় যা হ্রাস লাভ বা এমনকি ক্ষতির দিকে পরিচালিত করতে পারে।
এই কৌশলটি 20 পিরিয়ডের সহজ চলমান গড় (এসএমএ) এবং 5 পিরিয়ডের এক্সপোনেন্সিয়াল চলমান গড় (ইএমএ) এর সংমিশ্রণ ব্যবহার করে। 20 পিরিয়ডের এসএমএ বাজারের ওঠানামা কার্যকরভাবে মসৃণ করতে পারে এবং মাঝারি থেকে দীর্ঘমেয়াদী মূল্য প্রবণতা নির্ধারণ করতে পারে, যখন 5 পিরিয়ডের ইএমএ সাম্প্রতিক দামগুলিতে উচ্চতর ওজন নির্ধারণ করে এবং স্বল্পমেয়াদী মূল্য পরিবর্তনের প্রতি সংবেদনশীলভাবে প্রতিক্রিয়া জানায়। 20 পিরিয়ডের লাইনের উপরে থাকাকালীন মূল্য 5 পিরিয়ডের লাইনের উপরে ক্রস করার সময় ক্রয় সংকেত উত্পন্ন হয় এবং 20 পিরিয়ডের লাইনের নীচে থাকাকালীন মূল্য ক্রস করার সময় বিক্রয় সংকেত উত্পন্ন হয়। এই ধরনের ডাবল চলমান গড়ের সংমিশ্রণ স্বল্পমেয়াদী চলমান গড়ের প্রবর্তনের মাধ্যমে সংকেতগুলির সংবেদনশীলতা এবং সময়কে উন্নত করার সময় ট্রেড সংকেতগুলি প্রধান প্রবণাগুলি অনুসরণ করে।
ট্রেডিং সিগন্যালগুলি তৈরি হওয়ার পরে, প্রবণতা যাচাই করার জন্য এমএসিডি সূচকটি চালু করা হয়। বিশেষত, যখন ক্রয় সংকেতগুলি ট্রিগার করা হয়, তখন এমএসিডি ডিআইএফএফ লাইনে একটি
অবশেষে, দীর্ঘ এবং সংক্ষিপ্ত উভয় পজিশনের জন্য যুক্তিসঙ্গত স্টপ-লস স্তর সেট করা হয়। দীর্ঘ স্টপ-লস লাইনটি প্রবেশের পর সর্বনিম্ন পয়েন্টের নীচে সেট করা হয়, যখন সংক্ষিপ্ত স্টপ-লস লাইনটি প্রবেশের পর সর্বোচ্চ পয়েন্টের উপরে সেট করা হয়। স্টপ-লস স্তরগুলি দামের ওঠানামা সহ গতিশীলভাবে আপডেট হয়। এই জাতীয় স্টপ-লস পদ্ধতি সর্বাধিক পরিমাণে মুনাফা লক করে এবং গুরুতর বাজারের বিপরীতের ক্ষেত্রে অগ্রহণযোগ্য ক্ষতিগুলি রোধ করে।
এমএসিডি পরামিতিগুলি আরও ভাল সহযোগিতার জন্য সামঞ্জস্য করা যেতে পারে। এছাড়াও, মুভিং গড় সময়ের পরামিতিগুলি পণ্যের বৈশিষ্ট্য অনুসারে অপ্টিমাইজেশনের প্রয়োজন। অবশেষে, প্রধান দিকনির্দেশক পদক্ষেপের জন্য সম্পূর্ণ মুনাফা প্রকাশের অনুমতি দেওয়ার জন্য স্টপ লস পরিসীমা যুক্তিসঙ্গতভাবে শিথিল করা যেতে পারে।
এই কৌশলটির জন্য নিম্নলিখিত দিকগুলিতে আরও অপ্টিমাইজেশান অনুসরণ করা যেতে পারেঃ
অভিযোজিত চলমান গড় অ্যালগরিদম প্রবর্তন করুন। গতিশীল সময়কাল চলমান গড় সমন্বয় স্বয়ংক্রিয়ভাবে ম্যানুয়াল প্যারামিটার মিটিং প্রয়োজন ছাড়াই বাজারে মানিয়ে।
মেশিন লার্নিং মডেল অন্তর্ভুক্ত করুন। গভীর শিক্ষার মতো অ্যালগরিদম স্বয়ংক্রিয়ভাবে বিভিন্ন পণ্যের বাজার বৈশিষ্ট্যগুলি সনাক্ত করতে পারে এবং রিয়েল টাইমে সর্বোত্তম পরামিতি সেটিংগুলি আউটপুট করতে পারে।
অতিরিক্ত ফিল্টার যোগ করুন। অন্যান্য প্রযুক্তিগত সূচকগুলি বর্তমান সংকেতগুলির উপরে সহায়ক বিচার মান হিসাবে প্রবর্তিত হতে পারে, যেমন ভলিউম ফ্যাক্টরগুলিকে সংহত করা।
স্টপ লস কৌশলগুলি অপ্টিমাইজ করুন। ঝুঁকি নিয়ন্ত্রণের সময় বৃহত্তর পুরষ্কার পাওয়ার জন্য, ব্রেকআউট স্টপ লস এবং ট্র্যাকিং স্টপ লসের মতো আরও বুদ্ধিমান স্টপ লস কৌশলগুলি গবেষণা করা উচিত।
ডাবল মুভিং এভারেজ এবং এমএসিডি সংমিশ্রণ কৌশলটি একক প্রযুক্তিগত সূচকের সীমাবদ্ধতার বাইরে প্রবণতা, গতি, ঝুঁকি নিয়ন্ত্রণের মতো দিকগুলিকে ব্যাপকভাবে বিবেচনা করে এবং কার্যকরভাবে পরিমাণগত ব্যবসায়ের স্থিতিশীলতা উন্নত করতে পারে। এই কৌশলটি প্যারামিটার টিউনিংয়ের মাধ্যমে বিভিন্ন বাজারের পরিবেশে ভালভাবে মানিয়ে নেয় এবং লাইভ অ্যাপ্লিকেশন এবং অব্যাহত অপ্টিমাইজেশনের পক্ষে মূল্যবান। এদিকে, স্বয়ংক্রিয় অপ্টিমাইজেশান এবং সর্বাধিক কৌশল কার্যকারিতা জন্য আরও বুদ্ধিমান কৌশল অন্তর্ভুক্ত করার ক্ষেত্রে যথেষ্ট জায়গা রয়েছে।
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Band Strategy with Early Signal (v5)", overlay=true) // Inputs length = 20 mult = 1.5 src = close riskRewardRatio = input(3.0, title="Risk-Reward Ratio") // Calculating Bollinger Bands basis = ta.ema(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // Plotting Bollinger Bands plot(upper, "Upper Band", color=color.red) plot(lower, "Lower Band", color=color.green) // Tracking Two Candles Ago Crossing Bollinger Bands var float twoCandlesAgoUpperCrossLow = na var float twoCandlesAgoLowerCrossHigh = na if (close[2] > upper[2]) twoCandlesAgoUpperCrossLow := low[2] if (close[2] < lower[2]) twoCandlesAgoLowerCrossHigh := high[2] // Entry Conditions longCondition = (not na(twoCandlesAgoLowerCrossHigh)) and (high > twoCandlesAgoLowerCrossHigh) shortCondition = (not na(twoCandlesAgoUpperCrossLow)) and (low < twoCandlesAgoUpperCrossLow) // Plotting Entry Points plotshape(longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Strategy Execution if (longCondition) stopLoss = low - (high - low) * 0.05 takeProfit = close + (close - stopLoss) * riskRewardRatio strategy.entry("Buy", strategy.long) strategy.exit("Exit Buy", "Buy", stop=stopLoss, limit=takeProfit) if (shortCondition) stopLoss = high + (high - low) * 0.05 takeProfit = close - (stopLoss - close) * riskRewardRatio strategy.entry("Sell", strategy.short) strategy.exit("Exit Sell", "Sell", stop=stopLoss, limit=takeProfit)