এই কৌশলটি একটি দ্বৈত চলমান গড় ব্যবসায়ের উপর ভিত্তি করে একটি অভিযোজিত ট্রেডিং সিস্টেম, যা দ্রুত চলমান গড় (ইএমএ 25) এবং ধীর চলমান গড় (ইএমএ 100) এর ক্রসওভারের মাধ্যমে ক্রয় সংকেতগুলি সনাক্ত করে, ট্রেডিংয়ের কর্মক্ষমতা অনুকূল করার জন্য গতিশীল স্টপ-লস এবং মুনাফা লক্ষ্যগুলির সাথে মিলিত। কৌশলটি একটি ব্রেকআউট ট্রেডিং পদ্ধতি গ্রহণ করে, ঝুঁকি নিয়ন্ত্রণে মনোনিবেশ করে এবং রিটার্ন নিশ্চিত করে, মাঝারি থেকে দীর্ঘমেয়াদী ট্রেন্ড ট্রেডিংয়ের জন্য উপযুক্ত।
কৌশলটির মূল যুক্তিতে তিনটি মূল উপাদান রয়েছেঃ
কৌশলটি গতিশীল স্টপ-লস এবং মুনাফা পরিচালনার প্রক্রিয়াগুলির সাথে যুক্ত, গতিশীল স্টপ-লস এবং মুনাফা পরিচালনার প্রক্রিয়াগুলির মাধ্যমে প্রবণতা সূচনা পয়েন্টগুলি ক্যাপচার করে, অনুকূল ঝুঁকি-পুরষ্কার বৈশিষ্ট্য অর্জন করে। কৌশল নকশাটি ব্যবহারিক প্রয়োজনীয়তাগুলি পুরোপুরি বিবেচনা করে এবং শক্তিশালী ব্যবহারিকতা প্রদর্শন করে। প্রস্তাবিত অপ্টিমাইজেশন দিকগুলির মাধ্যমে কৌশলটির স্থিতিশীলতা এবং অভিযোজনযোগ্যতা আরও বাড়ানো যেতে পারে। এটি শক্তিশালী ঝুঁকি সহনশীলতা সহ ব্যবসায়ীদের জন্য উপযুক্ত যারা মাঝারি থেকে দীর্ঘমেয়াদী স্থিতিশীল রিটার্ন অনুসরণ করে।
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-18 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover with TP and SL (Buy only) and Break-even", overlay=true) // EMA sozlamalari emaFastLength = input.int(25, title="Fast EMA Length") emaSlowLength = input.int(100, title="Slow EMA Length") // Hisoblash emaFast = ta.ema(close, emaFastLength) emaSlow = ta.ema(close, emaSlowLength) // Kesishishni aniqlash bullishCross = ta.crossover(emaFast, emaSlow) // EMA 25 EMA 100 ni yuqoriga kesib o'tganda // EMA 100 tagidagi oxirgi qizil shamning tagini olish lastRedCandleLow = ta.valuewhen(close < open and close < emaSlow, low, 0) // EMA 100 pastidagi qizil shamning tagi // TP va SL darajalarini hisoblash longSL = lastRedCandleLow longTP = close + 3 * (close - longSL) // TP SL ga nisbatan 1:2 masofada // Savdoni ochish va 2% foyda bo'lganda SLni break-even ga o‘zgartirish if (bullishCross) strategy.entry("Buy", strategy.long) // Buy pozitsiyasini ochish strategy.exit("Exit Buy", "Buy", stop=longSL, limit=longTP) // SL va TP qo'yish // 2% foyda bo'lganda SLni break-even ga o'zgartirish if (strategy.position_size > 0) profitPercentage = (close - strategy.position_avg_price) / strategy.position_avg_price * 100 if (profitPercentage >= 2) strategy.exit("Exit Buy BE", "Buy", stop=strategy.position_avg_price) // SLni break-even ga o'zgartirish // Signalni ko'rsatish plotshape(bullishCross, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") // // TP va SL chizish // if (bullishCross) // line.new(x1=bar_index, y1=longSL, x2=bar_index+1, y2=longSL, color=color.red, width=1, extend=extend.none) // line.new(x1=bar_index, y1=longTP, x2=bar_index+1, y2=longTP, color=color.green, width=1, extend=extend.none) // label.new(bar_index, longSL, text="SL: " + str.tostring(longSL), style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small) // label.new(bar_index, longTP, text="TP: " + str.tostring(longTP), style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small) // EMA chizish plot(emaFast, color=color.blue, title="Fast EMA (25)") plot(emaSlow, color=color.orange, title="Slow EMA (100)") // Alert qo'shish alertcondition(bullishCross, title="Buy Signal Alert", message="EMA 25 crossed above EMA 100! Buy Signal!")