یہ حکمت عملی خرید اور فروخت کے سگنل پیدا کرنے کے لئے بولنگر بینڈ اور رشتہ دار طاقت انڈیکس (آر ایس آئی) کو جوڑتی ہے۔ جب قیمت نچلی بولنگر بینڈ سے نیچے ٹوٹ جاتی ہے اور آر ایس آئی ایک مخصوص نچلی سطح سے نیچے ہوتا ہے تو خرید کا سگنل متحرک ہوجاتا ہے۔ جب قیمت اوپری بولنگر بینڈ سے اوپر ٹوٹ جاتی ہے اور آر ایس آئی ایک مخصوص اوپری سطح سے اوپر ہوتا ہے تو فروخت کا سگنل متحرک ہوجاتا ہے۔ اس کے علاوہ ، حکمت عملی میں بار بار تجارت سے بچنے کے لئے خرید کے وقفے کا پیرامیٹر متعارف کرایا جاتا ہے ، جو اہرام پوزیشن مینجمنٹ کے لئے موزوں ہے۔
اس حکمت عملی میں دو کلاسیکی تکنیکی اشارے: بولنگر بینڈ اور آر ایس آئی کو ہوشیاری سے جوڑا گیا ہے۔ یہ رجحان کے مواقع کو حاصل کرنے کے لئے دوہری توثیق کے طریقہ کار کا استعمال کرتا ہے۔ اسی وقت ، حکمت عملی منافع کو بہتر بناتے ہوئے خطرے کو کنٹرول کرنے کے لئے اہرام کی پوزیشن کی تعمیر کا طریقہ متعارف کراتی ہے۔ تاہم ، حکمت عملی کو رجحان کے تسلسل کے خطرے ، پیرامیٹر کی اصلاح کے خطرے ، اور بلیک سوان ایونٹ کے خطرے جیسے خطرات کا بھی سامنا کرنا پڑتا ہے۔ مستقبل میں ، حکمت عملی کو اسٹاپ نقصان اور منافع حاصل کرنے ، متحرک پیرامیٹر کی اصلاح ، اور دیگر اشارے کے ساتھ مل کر مزید بہتر بنایا جاسکتا ہے۔ مجموعی طور پر ، یہ ایک واضح اور منطقی طور پر سخت مقداری تجارتی حکمت عملی ہے جو مزید تلاش اور مشق کے قابل ہے۔
/*backtest start: 2024-02-01 00:00:00 end: 2024-02-29 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ //@version=4 strategy(overlay=true, shorttitle="cakes'Strategy For RSI", default_qty_type = strategy.percent_of_equity, initial_capital = 100000, default_qty_value = 100, pyramiding = 0, title="cakes'Strategy", currency = 'USD') ////////// ** Inputs ** ////////// // Stoploss and Profits Inputs v1 = input(true, title="GoTradePlz") ////////// ** Indicators ** ////////// // RSI len = 14 src = close up = rma(max(change(src), 0), len) down = rma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - 100 / (1 + up / down) // Bollinger Bands length1 = 20 src1 = close mult1 = 1.0 basis1 = sma(src1, length1) dev1 = mult1 * stdev(src1, length1) upper1 = basis1 + dev1 lower1 = basis1 - dev1 ////////// ** Triggers and Guards ** ////////// // 输入 RSILowerLevel1 = input(30, title="RSI 下限水平") RSIUpperLevel1 = input(70, title="RSI 上限水平") // 购买间隔 buyInterval = input(5, title="购买间隔(K线数量)") // 跟踪购买间隔 var int lastBuyBar = na lastBuyBar := na(lastBuyBar[1]) ? bar_index : lastBuyBar // 策略信号 BBBuyTrigger1 = close < lower1 BBSellTrigger1 = close > upper1 rsiBuyGuard1 = rsi < RSILowerLevel1 rsiSellGuard1 = rsi > RSIUpperLevel1 Buy_1 = BBBuyTrigger1 and rsiBuyGuard1 and (bar_index - lastBuyBar) >= buyInterval Sell_1 = BBSellTrigger1 and rsiSellGuard1 if (Buy_1) lastBuyBar := bar_index strategy.entry("Long", strategy.long, when = Buy_1, alert_message = "Buy Signal!") strategy.close("Long", when = Sell_1, alert_message = "Sell Signal!")