এই কৌশলটির মূল ধারণা হ'ল ভারী চলমান গড়ের চারপাশে গুরুত্বপূর্ণ সমর্থন / প্রতিরোধের স্তরগুলি পরীক্ষা করার জন্য বিপরীতমুখী অবস্থানগুলি গ্রহণ করা। যখন দামগুলি উপরে / নীচে স্পাইক করে এবং তারপরে চলমান গড়টি পরীক্ষা করার জন্য পুলব্যাক করে, এটি সমর্থন / প্রতিরোধের স্তরগুলি গঠন করতে পারে এবং বিপরীতমুখী সুযোগ তৈরি করতে পারে।
এই কৌশলটি ওয়েটেড মুভিং এভারেজ সূচকের উপর ভিত্তি করে। এটি প্রথমে একটি নির্দিষ্ট দৈর্ঘ্যের ডাব্লুএমএ গণনা করে, তারপরে দামটি কিছু পরিসরের মাধ্যমে ডাব্লুএমএ থেকে বেরিয়ে আসে কিনা তা পর্যবেক্ষণ করে। যখন ব্রেকআউট দূরত্ব একটি প্রান্তিক পৌঁছে যায়, তখন এটি একটি তীরকে প্লট করে এবং অবস্থানগুলি খোলে। দীর্ঘ যেতে, দামটি প্রথমে কিছু পরিসরে ভেঙে ফেলতে হবে; সংক্ষিপ্ত যেতে, দামটি প্রথমে কিছু পরিসরে ভেঙে ফেলতে হবে। ব্রেকআউটগুলির মাধ্যমে বিপরীত সংকেত তৈরি করে এবং ডাব্লুএমএ
কৌশলটি ট্রেইল প্যারামিটারের মাধ্যমে ট্রেলিং স্টপ লস এবং ফিক্সড স্টপ লসের মধ্যে বিকল্প সরবরাহ করে, যাতে স্টপ লস ব্যাপ্তি সামঞ্জস্য করে ঝুঁকিগুলি নিয়ন্ত্রণ করা যায়। এটি লিমিট অর্ডারের সাথে আংশিক মুনাফাও লক করে। তদতিরিক্ত, সময় ফিল্টারগুলি পজিশন খোলার জন্য নির্দিষ্ট সময়সীমা সীমাবদ্ধ করতে পারে।
বিপরীতমুখী কৌশলগুলির মধ্যে সবচেয়ে বড় সুবিধা হ'ল পজিশন খোলার জন্য মূল বাজার টার্নিং পয়েন্টগুলি ক্যাপচার করার জন্য চলমান গড়ের সাথে বিপরীতমুখী সেটআপগুলি একত্রিত করা। বিপরীতমুখী কৌশলগুলির প্রায়শই ভাল জয়ের হার এবং ঝুঁকি পুরষ্কার অনুপাত থাকে, ঝুঁকিগুলি নিয়ন্ত্রণ করা সহজ। এই কৌশলটি বিস্তৃত স্টপ লস প্রক্রিয়া এবং আংশিক মুনাফা গ্রহণের পদ্ধতিগুলির সাথে সজ্জিত, যা ঝুঁকি হ্রাস এবং স্থিতিশীলতা উন্নত করতে আরও সহায়তা করে।
যেহেতু এটি চলমান গড়ের উপর ভিত্তি করে তৈরি, তাই বিভিন্ন বাজারে অভিযোজনযোগ্যতা পরীক্ষা করার জন্য ডাব্লুএমএ দৈর্ঘ্য, ব্রেকআউট পরিসীমা ইত্যাদির মতো মানগুলি সামঞ্জস্য করে প্যারামিটার অপ্টিমাইজেশনের জন্য পর্যাপ্ত জায়গা উপলব্ধ।
সবচেয়ে বড় ঝুঁকি ব্যর্থ বিপরীতমুখী। যদি মূল্য বিপরীতমুখী সংকেত গঠনের পরে স্টপ লস বা মুনাফা নিতে ব্যর্থ হয় এবং মূল দিকে চলতে থাকে, তবে এটি উল্লেখযোগ্যভাবে ভাসমান ক্ষতির সম্মুখীন হবে।
এছাড়াও, এটি প্যারামিটার অপ্টিমাইজেশনের উপর নির্ভর করে। অনুপযুক্ত প্যারামিটার সেটিংস সহজেই মূল্য বিপরীত সময় মিস করতে পারে বা মিথ্যা সংকেত তৈরি করতে পারে। পর্যাপ্ত ব্যাকটেস্টের মাধ্যমে বাজারের আচরণের সঠিক বোঝা এবং প্যারামিটার পছন্দগুলির সতর্ক মূল্যায়ন প্রয়োজন।
সিগন্যালের গুণমান এবং নির্ভুলতা উন্নত করার জন্য আরও সূচক প্রবর্তন করা যেতে পারে। উদাহরণস্বরূপ, মূল্য বিপরীতমুখী হওয়ার আগে, মূল্যের গতি, উদ্বায়ীতা ইত্যাদি সনাক্ত করতে নির্দিষ্ট পরিমাণগত কারণগুলি যুক্ত করা যেতে পারে। মাল্টিফ্যাক্টর মডেলিংয়ের জন্য।
মেশিন লার্নিং পদ্ধতিগুলিকে ঐতিহাসিক বাণিজ্য সংকেত এবং মূল্যের তথ্যের উপর ভিত্তি করে স্বল্পমেয়াদী মূল্য আন্দোলনের পূর্বাভাস দেওয়ার জন্যও পরীক্ষা করা যেতে পারে, যা মিথ্যা সংকেতগুলি ফিল্টার করতে এবং সংকেতের গুণমান উন্নত করতে সহায়তা করে।
উপরন্তু, কিছু অভিযোজিত অপ্টিমাইজেশান প্রক্রিয়া বাস্তবায়ন করা যেতে পারে। প্রকৃত বাণিজ্য ফলাফল অনুযায়ী, পরামিতি বা নিয়ম ওজন স্ব-অপ্টিমাইজেশান এবং কৌশল ENO উপলব্ধি করতে গতিশীলভাবে সামঞ্জস্য করা যেতে পারে।
এই কৌশলটির সামগ্রিক অপারেশন স্থিতিশীল। যুক্তিসঙ্গত প্যারামিটার স্পেস এবং বাজার পরিবেশে, এটি উল্লেখযোগ্য রিটার্ন অর্জন করতে পারে। বৃহত্তম সুবিধা নিয়ন্ত্রণযোগ্য ঝুঁকি এবং অপ্টিমাইজেশান সম্ভাবনায় রয়েছে। পরবর্তী পদক্ষেপের প্রচেষ্টা সংকেত মান উন্নত এবং অভিযোজনযোগ্য অপ্টিমাইজেশান ক্ষমতা অন্তর্ভুক্ত করার উপর দৃষ্টি নিবদ্ধ করা হবে। বিশ্বাস করা হয় যে ধারাবাহিক উন্নতিতে, এই কৌশলটি বিনিয়োগের পোর্টফোলিওগুলিতে একটি বাধ্যতামূলক পছন্দ হয়ে উঠতে পারে।
/*backtest start: 2023-11-20 00:00:00 end: 2023-11-22 08:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title="WMA Breakout",overlay=true, initial_capital=25000, default_qty_value=1, commission_type=strategy.commission.cash_per_contract, commission_value=3.02) len = input(20, minval=1, title="Length") src = input(close, title="Source") out = wma(src, len) price_drop = input(.003, "When price drops (In Ticks) Enter Long", step=.001) price_climb = input(.003, "When price climbs (In Ticks) Enter Short", step=.001) trail = input(true, "Trailing Stop(checked), Market stop(unchecked)") stop = input(10, "Stop (in ticks)", step=1) limit = input(5, "Limit Out", step=1) //size = input(1, "Limit Position Size (pyramiding)", minval=1) timec = input(true, "Limit Time of Day (Buying Side)") //Time Session sess = input("1600-0500", "Start/Stop trades (Est time)") t = time(timeframe.period, sess) //plots plot(wma(src,len)) z = if low+price_drop<out (out-low) plotarrow(z, colorup=red) a = if high-price_climb>out (high-out) plotarrow(a, colorup=lime) av=wma(src,len) //Orders if(timec) strategy.entry("Enterlong", long=true, when=z and t>1) else strategy.entry("Enterlong", long=true, when=z) if(trail) strategy.exit("Exit","Enterlong", profit=limit, trail_points = 0, trail_offset = stop ) else strategy.exit("Exit","Enterlong", profit=limit, loss = stop ) if(timec) strategy.entry("Entershort", long=false, when=a and t>1) else strategy.entry("Entershort", long=false, when=a) if(trail) strategy.exit("Exit","Entershort", profit=limit, trail_points = 0, trail_offset = stop ) else strategy.exit("Exit","Entershort", profit=limit, loss = stop )