এই কৌশলটি নির্বাচিত স্টক বা ক্রিপ্টোকারেন্সিগুলিতে সম্ভাব্য ব্রেকআউট সুযোগগুলি সনাক্ত করতে একটি দ্বৈত চলমান গড় সিস্টেম ব্যবহার করে। মূল নীতিটি হ'ল স্বল্পমেয়াদী চলমান গড়টি দীর্ঘমেয়াদী চলমান গড়ের নীচে ফিরে আসার সময় কেনা এবং দামগুলি দীর্ঘমেয়াদী চলমান গড়ের পুনরায় পরীক্ষা করার সময় বিক্রি করা।
কৌশলটি ট্রেডিং সংকেত হিসাবে বিভিন্ন সময়ের সাথে দুটি সহজ চলমান গড় (এসএমএ) ব্যবহার করে। প্রথম এসএমএর সামগ্রিক প্রবণতার দিক উপস্থাপনের জন্য একটি দীর্ঘ সময়কাল রয়েছে। দ্বিতীয় এসএমএর স্বল্পমেয়াদী দামের ওঠানামা ক্যাপচার করার জন্য একটি সংক্ষিপ্ত সময়কাল রয়েছে।
যখন স্বল্পমেয়াদী এসএমএ নীচে থেকে দীর্ঘমেয়াদী এসএমএ এর উপরে অতিক্রম করে, এটি সামগ্রিকভাবে দামের উত্থানের প্রবণতার সংকেত দেয়, সুতরাং কৌশলটি একটি দীর্ঘ অবস্থান খোলে। যখন দামগুলি দীর্ঘমেয়াদী এসএমএ পুনরায় পরীক্ষা করার জন্য ফিরে আসে, এটি স্বল্পমেয়াদী পুলব্যাক শেষ হয়েছে এবং কৌশলটি অবস্থান বন্ধ বা মুনাফা গ্রহণ বিবেচনা করে।
অতিরিক্তভাবে, এই কৌশলটিতে
এই কৌশলকে আরও উন্নত করার সুযোগ রয়েছে:
এই কৌশলটি সুযোগগুলি সনাক্ত করার জন্য একটি দ্বৈত চলমান গড় সিস্টেম ব্যবহার করে ট্রেন্ড অনুসরণ এবং পুলব্যাক ট্রেডিংয়ের শক্তিকে একত্রিত করে। একই সাথে, অন্তর্নির্মিত ওভারবয় / ওভারসোল্ড শর্তগুলি অপ্রয়োজনীয় অবস্থান খোলার এড়াতে পারে। এটি একটি খুব বাস্তব পরিমাণ ট্রেডিং কৌশল যা গভীর গবেষণা এবং অপ্টিমাইজেশনের মূল্যবান।
/*backtest start: 2023-02-20 00:00:00 end: 2024-02-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // @version=5 strategy("Profitable Pullback Trading Strategy", overlay=true,initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Inputs ma_length1 = input.int(280,'MA length 1', step = 10,group = 'Moving Avg. Parameters', inline = 'MA') ma_length2 = input.int(13,'MA length 2', step = 1,group = 'Moving Avg. Parameters', inline = 'MA') sl = input.float(title="Stop Loss (%)", defval=0.07, step=0.1, group="Moving Avg. Parameters") too_deep = input.float(title="Too Deep (%)", defval=0.27, step=0.01, group="Too Deep and Thin conditions", inline = 'Too') too_thin = input.float(title="Too Thin (%)", defval=0.03, step=0.01, group="Too Deep and Thin conditions", inline = 'Too') // Calculations ma1 = ta.sma(close,ma_length1) ma2 = ta.sma(close,ma_length2) too_deep2 = (ma2/ma1-1) < too_deep too_thin2 = (ma2/ma1-1) > too_thin // Entry and close condtions var float buy_price = 0 buy_condition = (close > ma1) and (close < ma2) and strategy.position_size == 0 and too_deep2 and too_thin2 close_condition1 = (close > ma2) and strategy.position_size > 0 and (close < low[1]) stop_distance = strategy.position_size > 0 ? ((buy_price - close) / close) : na close_condition2 = strategy.position_size > 0 and stop_distance > sl stop_price = strategy.position_size > 0 ? buy_price - (buy_price * sl) : na // Entry and close orders if buy_condition strategy.entry('Long',strategy.long) if buy_condition[1] buy_price := open if close_condition1 or close_condition2 strategy.close('Long',comment="Exit" + (close_condition2 ? "SL=true" : "")) buy_price := na plot(ma1,color = color.blue) plot(ma2,color = color.orange)