এই কৌশলটি স্বয়ংক্রিয় ট্রেডিংয়ের জন্য ক্রয় এবং বিক্রয় সংকেত সেট আপ করার জন্য চলমান গড় ক্রসওভার এবং প্রতিরোধের স্তরের ব্রেকআউটের কৌশলগুলিকে একীভূত করে। যখন স্বল্পমেয়াদী চলমান গড় নীচের থেকে মাঝারি মেয়াদী চলমান গড়ের উপরে অতিক্রম করে এবং স্টক মূল্য প্রতিরোধের স্তরটি ভেঙে যায়, তখন একটি ক্রয় সংকেত উত্পন্ন হয়। কৌশলটি ঝুঁকি নিয়ন্ত্রণের জন্য 15% দাম বৃদ্ধি এবং 3% দাম হ্রাসে স্টপ-লস সেট করে। এই পরিপক্ক পরিমাণগত ট্রেডিং কৌশলটি স্বয়ংক্রিয়ভাবে বাজারের প্রবণতা সনাক্ত করতে পারে এবং সঠিক ঝুঁকি পরিচালনার সাথে প্রযুক্তিগত সংকেতগুলি আবির্ভূত হলে অবস্থানগুলিতে প্রবেশ করতে পারে।
এই কৌশলটি মূলত নিম্নলিখিত প্রযুক্তিগত সূচক এবং মূল্যায়নের উপর ভিত্তি করে ট্রেডিং সংকেত উৎপন্ন করেঃ
চলমান গড় ক্রসওভার কৌশলঃ 20 দিনের এবং 44 দিনের সহজ চলমান গড় গণনা করা হয়। যখন 20 দিনের এসএমএ 44 দিনের লাইনের উপরে অতিক্রম করে, তখন এটি বিচার করা হয় যে বাজারটি একটি ঊর্ধ্বমুখী প্রবণতায় রয়েছে, একটি ক্রয় সংকেত উত্পন্ন করে।
প্রতিরোধের স্তর ব্রেকআউট কৌশলঃ যে মূল্যের স্তরগুলিতে স্টক মূল্য বারবার পৌঁছেছে তবে এটির মাধ্যমে ভাঙতে ব্যর্থ হয়েছে সেগুলিকে প্রতিরোধের স্তর বলা হয়। এগুলি ভেঙে ফেলা বোঝায় যে দামটি একটি নতুন আপট্রেন্ডে প্রবেশ করছে। এই কৌশলটি পূর্ববর্তী বন্ধের 0.7% এর উপরে একটি ব্রেকআউটকে প্রতিরোধের ব্রেকআউট হিসাবে বিবেচনা করে।
আরএসআই দোলকঃ আপেক্ষিক শক্তি সূচক, অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয়ের শর্তগুলি সনাক্ত করার জন্য একটি গতির সূচক। এই কৌশলটি একটি অতিরিক্ত ক্রয়ের সংকেত হিসাবে 50 এর উপরে 14 দিনের আরএসআই মান ব্যবহার করে।
ভলিউম বিশ্লেষণঃ গত ১০ দিনের গড়ের চেয়ে বেশি ভলিউম প্রায়শই ক্রেতা বা বিক্রেতার আগ্রহ এবং মূল্য আন্দোলনের গতি বাড়ার পরামর্শ দেয়।
ক্রয় সংকেতঃ যখন সংক্ষিপ্ত এসএমএ মাঝারি এসএমএ অতিক্রম করে, যখন আরএসআইয়ের মূল্য অত্যধিক ক্রয় করা হয় এবং গড় ট্রেডিং ভলিউমের চেয়ে বেশি হয়, তখন এটি একটি আপগ্রেড প্রবণতা নির্দেশ করে।
বিক্রয় সংকেতঃ 15% এন্ট্রি মূল্য থেকে লাভ, 3% স্টপ লস।
এই পরিপক্ক পরিমাণগত ট্রেডিং কৌশলটি বাজারের কাঠামো এবং প্রবণতা চিহ্নিত করার জন্য একাধিক প্রযুক্তিগত বিশ্লেষণ পদ্ধতি একীভূত করে, প্রবণতা গঠনের সময় স্বয়ংক্রিয়ভাবে ট্রেডিং সংকেত তৈরি করে, যথাযথ ঝুঁকি ব্যবস্থাপনা সহ।
মুভিং এভারেজ কৌশল ব্যবহার করে বাজার প্রবণতা সুচারুভাবে ধরা হয়।
ভলিউম বিশ্লেষণের মাধ্যমে মিথ্যা ব্রেকআউটের সময় পজিশন খোলার থেকে বিরত থাকে।
স্টপ-লস এবং টেক-লাভ সেট করে, ঝুঁকি-প্রতিদান অনুপাত অপ্টিমাইজ করে কার্যকর ঝুঁকি নিয়ন্ত্রণ।
সামগ্রিকভাবে, বাজারের কাঠামো সম্পর্কে চমৎকার বিচার, কঠোর ট্রেডিং নিয়ম এবং ঝুঁকি নিয়ন্ত্রণ এটিকে একটি শক্তিশালী পরিমাণগত ট্রেডিং কৌশল করে তোলে।
ডাবল চলমান গড় সিস্টেমগুলি বিভিন্ন সময়ের জন্য পরামিতি সেটিংয়ের জন্য সংবেদনশীল হতে পারে।
ট্রেন্ড অনুসরণকারী সিস্টেমগুলি হঠাৎ মৌলিক ইভেন্টগুলিতে দ্রুত প্রতিক্রিয়া জানাতে পারে না, স্টপ লস ঝুঁকির মুখোমুখি হয়।
যদিও স্টপ লস সেটআপ করা আছে, উচ্চ ট্রেডিং ফ্রিকোয়েন্সি স্টপ লস এক্সিকিউশন অনিবার্য সংখ্যা, ফলস্বরূপ অসম লাভের মাত্রা হতে পারে।
প্রযুক্তিগত সূচকগুলির সংকেতগুলি প্রায়শই বাজারের সেরা বিপরীতমুখী পয়েন্টগুলির চেয়ে পিছনে থাকে।
অপ্টিমাইজ পরামিতি যেমন চলন্ত গড় দৈর্ঘ্য, স্টপ লস / মুনাফা লক্ষ্যমাত্রা প্যারামিটার টিউনিং পদ্ধতি দ্বারা সর্বোত্তম খুঁজে পেতে।
সিগন্যালের নির্ভুলতা বাড়াতে ব্যাপ্তি সনাক্তকরণের জন্য বোলিংজার ব্যান্ড, বিপর্যয় সনাক্তকরণের জন্য এমএসিডি ইত্যাদির মতো অন্যান্য প্রযুক্তিগত সূচক যুক্ত করুন।
নেতিবাচক সংবাদ দ্বারা ট্রিগার করা স্টপ লস এড়াতে মৌলিক এবং ইভেন্ট চালিত সংকেত অন্তর্ভুক্ত করুন।
ট্রেডিং ঝুঁকি নিয়ন্ত্রণের জন্য নির্দিষ্ট পরিমাণ, নির্দিষ্ট শতাংশ পদ্ধতির মাধ্যমে অর্থ পরিচালনা অনুকূলিত করুন।
এই কৌশলটি মসৃণ অপারেশন, সঠিক বিচার এবং কঠোর ট্রেডিং নিয়ম প্রদর্শন করে, যা আরও কার্যকর পরিমাণগত ট্রেডিং কৌশলগুলির একটি প্রতিনিধিত্ব করে। তবে প্রযুক্তিগত বিশ্লেষণ একা বাজারের পড়ার ক্ষেত্রে সীমাবদ্ধতা রয়েছে, তাই আরও সূচক এবং মৌলিক / ইভেন্ট সংকেতগুলি অন্তর্ভুক্ত করা, স্টপ লস / মুনাফা গ্রহণের স্তরগুলি এবং অর্থ পরিচালনার প্রক্রিয়াগুলি অনুকূলিতকরণে আরও উন্নতি রয়েছে। সংক্ষেপে, এই কৌশলটি প্রযুক্তিগত বিশ্লেষণ কৌশলগুলির মধ্যে উচ্চ স্তরে পৌঁছেছে, তবে পরবর্তী পদক্ষেপে মৌলিক বিশ্লেষণ / ইভেন্ট চালিত চক্র ট্রেডিং কৌশলগুলির দিকে অগ্রসর হওয়া উচিত।
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Advanced Strategy with Conditional Stop Loss", overlay=true) // Parameters ma_length_20 = 20 ma_length_44 = 44 ma_length_100 = 100 rsi_length = 14 volume_length = 10 profit_target = 1.15 // 15% above the buy price stop_loss_target = 0.97 // 3% below the buy price wait_candles = 10 // Number of candles to wait after selling, unless MA cross condition met // Indicators moving_average_20 = ta.sma(close, ma_length_20) moving_average_44 = ta.sma(close, ma_length_44) moving_average_100 = ta.sma(close, ma_length_100) rsi = ta.rsi(close, rsi_length) volumeAvg = ta.sma(volume, volume_length) // Variables to manage the wait period after a sell var int last_sell_candle = 0 // Update last sell candle if (strategy.position_size[1] > 0 and strategy.position_size == 0) last_sell_candle := bar_index // Trend identification uptrend = close > moving_average_20 above_ma20_by_1_percent = close > moving_average_20 * 1.01 ma_cross = ta.crossover(moving_average_20, moving_average_44) or ta.crossunder(moving_average_20, moving_average_44) close_near_high = (close >= high * 0.993) and (close <= high) // Buy condition (only in uptrend, above 1% from 20-day MA, and respecting new filter) can_buy_after_cross = ma_cross and close > high[1] can_buy_after_wait = (bar_index - last_sell_candle) > wait_candles buy_condition = (can_buy_after_cross or can_buy_after_wait) and uptrend and above_ma20_by_1_percent and close > moving_average_44 and close > moving_average_100 and close > high[1] and rsi > 50 and volume > volumeAvg and not close_near_high // Entry if (buy_condition and strategy.position_size == 0) strategy.entry("Buy", strategy.long) // Exit conditions if (strategy.position_size > 0) // Profit target profit_level = strategy.position_avg_price * profit_target strategy.exit("Take Profit", "Buy", limit=profit_level) // Dynamic Stop Loss - Check on every bar if the price has dropped 3% below the buy price stop_loss_level = strategy.position_avg_price * stop_loss_target if (low < stop_loss_level) strategy.close("Buy", comment="Stop Loss") // Plotting plot(moving_average_20, color=color.green, title="20-Day Moving Average") plot(moving_average_44, color=color.blue, title="44-Day Moving Average") plot(moving_average_100, color=color.red, title="100-Day Moving Average")