اس حکمت عملی کا استعمال اشارے جیسے ہموار چلتی اوسط (ایس ایم اے) ، رشتہ دار طاقت انڈیکس (آر ایس آئی) ، حقیقی رینج (ٹی آر) ، اور حجم چلتی اوسط (ولیم ایم اے) کے ساتھ مل کر ہوتا ہے جب مخصوص معیار کو پورا کیا جاتا ہے تو تجارت کو انجام دینے کے لئے رجحان فلٹرز ، حجم ، اور اتار چڑھاؤ کی شرائط۔ اس حکمت عملی کے پیچھے بنیادی خیال یہ ہے کہ جب قیمت ایس ایم اے 200 سے نیچے ہو ، رجحان نیچے ہے ، اور حجم اور اتار چڑھاؤ دونوں کم ہیں۔ اسٹاپ نقصان اور منافع کی سطح داخلہ پر مقرر کی جاتی ہے۔ اس کے علاوہ ، اس حکمت عملی میں ایک استثنائی خروج میکانزم شامل ہے ، جب آر ایس آئی 70 سے تجاوز کرتا ہے یا جب پہلے سے طے شدہ اسٹاپ نقصان یا منافع کی سطح تک پہنچ جاتا ہے تو پوزیشن بند ہوجاتی ہے۔
یہ حکمت عملی مخصوص حالات میں تجارت کو انجام دینے کے لئے رجحان فلٹرز ، حجم اور اتار چڑھاؤ کی شرائط کے ساتھ متعدد تکنیکی اشارے کو جوڑتی ہے۔ واضح اسٹاپ نقصان اور منافع کی سطحوں کو طے کرکے اور استثناء سے باہر نکلنے کے طریقہ کار کو نافذ کرکے ، حکمت عملی مؤثر طریقے سے خطرے کا انتظام کرتی ہے۔ تاہم ، حکمت عملی میں کچھ حدود ہیں ، کیونکہ پیرامیٹر کے انتخاب اور مارکیٹ کی خرابیوں جیسے عوامل اس کی کارکردگی کو متاثر کرسکتے ہیں۔ مستقبل میں بہتری مزید اشارے کو شامل کرکے ، پیرامیٹر کی ترتیبات کو بہتر بنانے اور رسک مینجمنٹ کے اجزاء کو شامل کرکے کی جاسکتی ہے۔
/*backtest start: 2024-05-01 00:00:00 end: 2024-05-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Strategia Stop Loss & Take Profit z Filtrem Trendu i Wyjątkiem", shorttitle="Smooth MA SL & TP with Exception", overlay=true) // Parametry tp_multiplier = input.float(1.5, title="Mnożnik Take Profit") sl_percent = input.float(5, title="Procent Stop Loss") wait_bars = input.int(3, title="Liczba Oczekiwanych Świec") sma_period = input.int(200, title="Okres SMA") rsi_period = input.int(14, title="Okres RSI") vol_ma_period = input.int(20, title="Okres Średniej Wolumenu") tr_ma_period = input.int(20, title="Okres Średniej Rzeczywistego Zakresu") // Obliczenie Gładkiej Średniej Kroczącej sma = ta.sma(close, sma_period) // Obliczenie RSI rsi = ta.rsi(close, rsi_period) // Filtr Trendu uptrend = close > sma downtrend = close < sma // Warunek konsolidacji: Niski wolumen i niska zmienność niski_wolumen = volume < ta.sma(volume, vol_ma_period) niska_zmienosc = ta.tr(true) < ta.sma(ta.tr(true), tr_ma_period) // Warunek Wejścia (Long): Cena poniżej SMA 200 i filtr trendu w strefie czerwonej warunek_wejscia = close < sma and niski_wolumen and niska_zmienosc and not uptrend // Warunek Wyjścia ze strategii warunek_wyjscia = downtrend and close > sma and ta.crossover(close, sma) // Ustalanie Stop Loss i Take Profit var float stop_loss = na var float take_profit = na var int indeks_wejscia = na if (warunek_wejscia) stop_loss := close * (1 - sl_percent / 100) take_profit := close * (1 + tp_multiplier) indeks_wejscia := bar_index // Handel if (warunek_wejscia) strategy.entry("Long", strategy.long) // Warunek Wyjścia: RSI w strefie wykupienia lub Stop Loss/Take Profit if (strategy.opentrades != 0) if (rsi > 70) strategy.exit("Take Profit/Stop Loss", "Long", limit=take_profit) else if (bar_index - indeks_wejscia == wait_bars) strategy.exit("Take Profit/Stop Loss", "Long", stop=stop_loss, limit=take_profit) // Wyjątek: Warunek Wyjścia z Longów na podstawie zmiany trendu if (warunek_wyjscia) strategy.close("Long") // Rysowanie RSI rsi_plot = plot(rsi, title="RSI", color=color.blue) // Rysowanie Gładkiej Średniej Kroczącej sma_plot = plot(sma, color=color.gray, title="Smooth MA", linewidth=2) // Rysowanie Filtru Trendu fill(sma_plot, rsi_plot, color=downtrend ? color.new(color.red, 90) : na)