
اس حکمت عملی میں بنیادی طور پر مارکیٹ میں رجحانات اور الٹ پوائنٹس کی شناخت کے لئے آر ایس آئی کی اوسط اور قیمتوں میں اچانک تبدیلیوں کا استعمال کیا جاتا ہے۔ اس کا بنیادی خیال یہ ہے کہ آر ایس آئی کے اوور بیئر اور اوور سیل کی صورت میں پوزیشنوں پر غور کیا جائے ، اور اچانک قیمتوں میں تبدیلی کی صورت میں الٹ پوائنٹس کی تلاش کی جائے۔ اس کے علاوہ ، ای ایم اے کا استعمال فلٹرنگ سگنل کے لئے معاون ہے۔
RSI کا اوسط SMA کا حساب لگائیں۔ جب RSI کا SMA لائن 60 یا اس سے نیچے 40 سے گزرتا ہے تو ، اسے اوورلوڈ اور اوورلوڈ سمجھا جاتا ہے ، اور ریورس پوزیشن کھولنے پر غور کیا جاتا ہے۔
جب آر ایس آئی کی تبدیلی کسی خاص قدر سے زیادہ ہو تو ، اچانک تبدیلی کا تصور کیا جاتا ہے۔ اصل اختتامی قیمت کی توثیق کے ساتھ مل کر ، ایک ریورس پوزیشن قائم کرنے کے اشارے کے طور پر۔
ای ایم اے کثیر صف فلٹرنگ کا استعمال کرتے ہوئے ، کثیر سر قائم کرنے پر غور صرف اس وقت کیا جاتا ہے جب قیمت ایک مختصر دورانیہ والی ای ایم اے کو اوپر لے جاتی ہے۔ خالی سر قائم کرنے پر غور صرف اس وقت کیا جاتا ہے جب قیمت ایک مختصر دورانیہ والی ای ایم اے کو نیچے لے جاتی ہے۔
RSI کے اوسط ، اچانک تبدیلیوں اور EMA کے فلٹرنگ کا استعمال کرتے ہوئے ایک مجموعہ کی طرف سے ایک بہتر پوزیشن کی پوزیشن تلاش کریں.
RSI کا استعمال کرتے ہوئے اوسط زیادہ خرید اور فروخت کے رجحان کا زیادہ درست اندازہ لگانے میں مدد کرتا ہے ، جس سے واپسی کے مواقع کو فائدہ اٹھانا آسان ہوتا ہے۔
اچانک تبدیلیاں اکثر قیمتوں کے رجحان اور سمت میں تبدیلی کی نشاندہی کرتی ہیں۔ اس سگنل کو استعمال کرنے سے انٹری کی وقت سازی میں بہتری آسکتی ہے۔
EMA کی کثیر گراف فلٹرنگ غلط سگنل کو مزید روکنے کے لئے، اس طرح غیر ضروری نقصان کو کم کرنے کے لئے.
حکمت عملی کے استحکام اور وشوسنییتا کو بہتر بنانے کے لئے متعدد پیرامیٹرز کو ایک فیصلہ کن معیار کے طور پر استعمال کیا جاسکتا ہے۔
آر ایس آئی غیر مستحکم ہے اور ایس ایم اے کی قیمتوں میں زیادہ کامیابی نہیں ہے۔ آر ایس آئی کے پیرامیٹرز کو مناسب طریقے سے بہتر بنایا جاسکتا ہے یا اس کی جگہ دوسرے اشارے استعمال کیے جاسکتے ہیں۔
اچانک تبدیلی مختصر مدت کے جھٹکے ہوسکتی ہے ، حقیقی الٹ نہیں ہے۔ آپ کو انڈکشن سائیکل کی لمبائی بڑھا کر فیصلہ کی درستگی میں اضافہ کیا جاسکتا ہے۔
ای ایم اے سمت فلٹرنگ میں تاخیر ہے۔ ای ایم اے کی زیادہ حساسیت کو کم دورانیے کے ساتھ جانچنے کے لئے۔
مجموعی طور پر ، یہ حکمت عملی پیرامیٹرز کی ایڈجسٹمنٹ کے لئے زیادہ حساس ہے ، جس میں زیادہ سے زیادہ پیرامیٹرز کا مجموعہ تلاش کرنے کے لئے محتاط جانچ پڑتال کی ضرورت ہے۔
RSI کے ساتھ ADX ، MACD اور دیگر اشارے کا استعمال کرتے ہوئے ، بہتر داخلے کے مقامات کی تلاش کریں۔
مشین لرننگ الگورتھم کو شامل کریں جو ماڈل ٹریننگ کے ذریعہ اچانک خرید و فروخت کے سگنل کی صداقت اور استحکام کا فیصلہ کرے۔
ای ایم اے کی سمت فلٹرنگ کے اثر کو مزید بڑھانا ، جیسے مختلف ادوار کے ای ایم اے کے لئے جامع فیصلے میں بہتری۔
اس کے علاوہ ، آپ اپنی مرضی کے مطابق اسٹاپ نقصان کی حکمت عملی کو شامل کرسکتے ہیں ، جس سے آپ اسٹاپ نقصان کو متحرک طور پر مارکیٹ میں اتار چڑھاؤ کی حد کے مطابق ایڈجسٹ کرسکتے ہیں۔
پیرامیٹرز کو بہتر بنانا جاری رکھیں ، بہترین پیرامیٹرز کا مجموعہ تلاش کریں۔ آپٹمائزڈ تشخیص کے معیار میں شارپ تناسب وغیرہ کو مدنظر رکھا جاسکتا ہے۔
یہ حکمت عملی سب سے پہلے RSI کی اوسط قیمت کا استعمال کرتے ہوئے اوورلوڈ اور اوورلوڈ کی صورتحال کا تعین کرتی ہے۔ اس کے بعد اچانک تبدیلیوں پر ریورس پوزیشن قائم کی جاتی ہے۔ اس کے ساتھ ساتھ EMA کا استعمال معاون فلٹرنگ کے لئے کیا جاتا ہے۔ معقول پیرامیٹرز کی ترتیب کے ذریعہ ، مارکیٹ کے رجحان کی تبدیلی کے نقطہ کو مؤثر طریقے سے اندازہ کیا جاسکتا ہے۔ مجموعی طور پر ، یہ حکمت عملی مستحکم ہے اور اس کی کچھ عملی قیمت ہے۔ اس کے بعد مزید بہتری کی گنجائش ہے ، جس کی مسلسل جانچ اور اصلاح کی ضرورت ہے۔
/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-19 00:00:00
period: 3m
basePeriod: 1m
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/
// © samwillington
//@version=5
strategy("sma RSI & sudden buy and sell Strategy v1", overlay=true)
price = close
length = input( 14 )
inst_length = input( 10 )
var rbc = 0
var float rsiBP = 0.0
var rsc = 0
var float rsiSP = 0.0
bars = input(10)
lookbackno2 = input.int(20)
rsi_buy = 0
rsi_sell = 0
//EMA inputs
input_ema20 = input.int(20)
ema20 = ta.ema(price, input_ema20)
input_ema50 = input.int(50)
ema50 = ta.ema(price, input_ema50)
input_ema100 = input.int(100)
ema100 = ta.ema(price, input_ema100)
input_ema200 = input.int(200)
ema200 = ta.ema(price, input_ema200)
input_ema400 = input.int(400)
ema400 = ta.ema(price, input_ema400)
input_ema800 = input.int(800)
ema800 = ta.ema(price, input_ema800)
vrsi = ta.rsi(price, length)
hi2 = ta.highest(price, lookbackno2)
lo2 = ta.lowest(price, lookbackno2)
buy_diff_rsi = vrsi - ta.rsi(close[1], length)
sell_diff_rsi = ta.rsi(close[1],length) - vrsi
//RSI high low
var int sudS = 0
var int sudB = 0
var float sudSO = 0.0
var float sudSC = 0.0
var float sudBO = 0.0
var float sudBC = 0.0
var sudBuy = 0
var sudSell = 0
var countB = 0
var countS = 0
var co_800 = false
var co_400 = false
var co_200 = false
var co_100 = false
var co_50 = false
var co_20 = false
co_800 := ta.crossover(price , ema800)
co_400 := ta.crossover(price , ema400)
co_200 := ta.crossover(price , ema200)
co_100 := ta.crossover(price , ema100)
co_50 := ta.crossover(price , ema50)
co_20 := ta.crossover(price , ema20)
if(ta.crossunder(price , ema20))
co_20 := false
if(ta.crossunder(price , ema50))
co_50 := false
if(ta.crossunder(price , ema100))
co_100 := false
if(ta.crossunder(price , ema200))
co_200 := false
if(ta.crossunder(price , ema400))
co_400 := false
if(ta.crossunder(price , ema800))
co_800 := false
if((price> ema800) and (price > ema400))
if(co_20)
if(co_50)
if(co_100)
if(co_200)
strategy.close("Sell")
strategy.entry("Buy", strategy.long, comment="spl Buy")
co_20 := false
co_50 := false
co_100 := false
co_200 := false
// too much rsi
if(vrsi > 90)
strategy.close("Buy")
strategy.entry("Sell", strategy.short, comment="RSI too overbuy")
if(vrsi < 10)
strategy.close("Sell")
strategy.entry("Buy", strategy.long, comment="RSI too oversold")
var sudbcount = 0 // counting no. of bars till sudden rise
var sudscount = 0 // counting no. of bars till sudden decrease
if(sudB == 1)
sudbcount := sudbcount + 1
if(sudS == 1)
sudscount := sudscount + 1
if((buy_diff_rsi > inst_length) and (hi2 > price))
sudB := 1
sudBO := open
sudBC := close
if((sell_diff_rsi > inst_length) )
sudS := 1
sudSO := open
sudSC := close
if(sudbcount == bars)
if(sudBC < price)
strategy.close("Sell")
strategy.entry("Buy", strategy.long, comment="sudd buy")
sudbcount := 0
sudB := 0
sudbcount := 0
sudB := 0
if(sudscount == bars)
if(sudSC > price)
strategy.close("Buy")
strategy.entry("Sell", strategy.short, comment="sudd sell")
sudscount := 0
sudS := 0
sudscount := 0
sudS := 0
over40 = input( 40 )
over60 = input( 60 )
sma =ta.sma(vrsi, length)
coo = ta.crossover(sma, over60)
cuu = ta.crossunder(sma, over40)
if (coo)
strategy.close("Sell")
strategy.entry("Buy", strategy.long, comment="modified buy")
if (cuu)
strategy.close("Buy")
strategy.entry("Sell", strategy.short, comment="modefied sell")
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)