
اس حکمت عملی میں متعدد تکنیکی اشارے کا استعمال کیا گیا ہے ، جو طویل اور قلیل مدتی باہمی تجارتی فیصلے کرنے کے لئے استعمال کیا جاتا ہے۔ اس میں بنیادی طور پر برلن لائن ، آر ایس آئی ، اے ڈی ایکس اور دیگر اشارے شامل ہیں ، جبکہ مساوی لائن کے ساتھ رجحان کی سمت کا فیصلہ کیا گیا ہے۔
یہ حکمت عملی بنیادی طور پر قیمتوں کے اتار چڑھاؤ کی صورتحال کا فیصلہ کرنے کے لئے بولین لائن کے ذریعہ کی جاتی ہے ، بولین لائن کی بندش قیمتوں کے اتار چڑھاؤ کو کم کرنے کی نمائندگی کرتی ہے ، جس سے ٹوٹنے کا امکان ہے۔ اس کے ساتھ ساتھ آر ایس آئی کے ساتھ مل کر اوورلوڈ اوور سیل کا فیصلہ کرنے کے لئے ، آر ایس آئی 70 سے زیادہ اوورلوڈ زون کے لئے ہے ، اور 30 سے کم اوورلوڈ زون کے لئے ہے۔ جب بولین لائن بند ہوجاتی ہے ، اور آر ایس آئی اشارے اوورلوڈ اوورلوڈ زون کے قریب ہوتا ہے تو ، الٹ ٹریڈنگ کی جاتی ہے۔
اس کے علاوہ ، یہ حکمت عملی قیمتوں کے رجحان کی طاقت کا اندازہ لگانے کے لئے ADX کا استعمال کرتی ہے۔ جب ADX اونچا ہوتا ہے تو ، ایک مضبوط رجحان کی نمائندگی کرتا ہے ، اس وقت آگے کی تجارت کا انتخاب کیا جاسکتا ہے۔ جب ADX کم ہوتا ہے تو ، اس کا کوئی واضح رجحان نہیں ہوتا ہے ، اس وقت واپسی کی تجارت پر غور کیا جاسکتا ہے۔ آخر میں ، طویل مدتی رجحان کی سمت کا اندازہ لگانے کے لئے مساوات کے ساتھ مل کر ، اگر قیمت اوپر کی طرف ہے تو ، خریدنے پر غور کیا جاسکتا ہے۔ اگر قیمت نیچے کی طرف ہے تو ، فروخت پر غور کیا جاسکتا ہے۔
خاص طور پر ، جب بورن کی پٹی تنگ ہوتی ہے تو ، آر ایس آئی اشارے اوپری خرید اوپری فروخت زون کے قریب ہوتے ہیں ، اور قیمت نیچے کی طرف گر جاتی ہے ، اس وقت یہ سمجھا جاتا ہے کہ اس کی واپسی ہوسکتی ہے ، اس وقت زیادہ غور کریں؛ جب بورن کی پٹی تنگ ہوتی ہے تو ، آر ایس آئی اشارے اوپری فروخت زون کے قریب ہوتے ہیں ، اور قیمت اوپر کی طرف بڑھ جاتی ہے ، اس وقت اس کی واپسی ہوسکتی ہے ، اس وقت خالی کرنے پر غور کریں۔ اس کے علاوہ ، اگر ADX زیادہ ہے تو ، قیمت بڑھتی ہوئی رجحان میں زیادہ پوزیشن لے سکتی ہے۔ اگر ADX کم ہے تو ، قیمت نیچے کی طرف بڑھتی ہوئی رجحان میں ، پوزیشن خالی کر سکتی ہے۔ متعدد اشارے کا استعمال کرکے ، آپ ٹریڈنگ سسٹم کی استحکام کو بڑھا سکتے ہیں۔
اس طرح کی کثیر پیمائش کی حکمت عملی کے فوائد ہیں:
متعدد تکنیکی اشارے کو جامع طور پر مدنظر رکھتے ہوئے ، ٹریڈنگ سگنل کی درستگی اور استحکام میں اضافہ ہوتا ہے۔ ایک ہی اشارے جعلی توڑنے جیسے گمراہ کن ہیں ، متعدد اشارے کا مجموعہ سگنل کی توثیق کرسکتا ہے ، اور غلط تجارت سے بچ سکتا ہے۔
رجحانات اور جھٹکے دونوں کو مدنظر رکھتے ہوئے ، مختلف مارکیٹ کے حالات کے مطابق ڈھالنے کے قابل ، لچکدار ہے۔ رجحانات کا کاروبار بڑے رجحانات کا تعاقب کرتا ہے ، جھٹکے والے تجارت کا ہدف چھوٹا منافع ہوتا ہے۔
ایک ہی وقت میں ، زیادہ سے زیادہ کم کرنے سے ، ایک طرفہ مارکیٹ میں پوزیشن کے خطرات کو کم کیا جاسکتا ہے ، اور انتہائی حالات سے بچایا جاسکتا ہے۔
جب پوزیشنیں غلط ہوجاتی ہیں تو کچھ منافع اور نقصانات کو محدود کرنے کے لئے اسٹاپ نقصان کی حد مقرر کریں۔
پیرامیٹرز کی اصلاح کے ذریعے ، مارکیٹ میں تبدیلیوں کے مطابق حکمت عملی کے اثر کو بہتر بنایا جاسکتا ہے۔
اس حکمت عملی کے کچھ خطرات بھی ہیں جن کے بارے میں آگاہ ہونا ضروری ہے:
کثیر اشارے کے مجموعے سے حکمت عملی کی پیچیدگی میں اضافہ ہوتا ہے ، اور پیرامیٹرز کی غلط ترتیب سے اس کی تاثیر میں کمی واقع ہوسکتی ہے۔ کافی جانچ اور اصلاح کی ضرورت ہے۔
تکنیکی اشارے پر بہت زیادہ انحصار ، بنیادی معلومات کو نظرانداز کرنا ، تجارتی سگنل کو غلط بنانے کا سبب بن سکتا ہے۔
جب اشارے سگنل پیدا کرتے ہیں تو ، مارکیٹ میں کچھ تبدیلیاں ہوسکتی ہیں ، جس میں اعلی اور کم ہونے کا خطرہ ہوتا ہے۔ مناسب طریقے سے واپسی کا انتظار کرنے کی ضرورت ہے۔
کثیر خلائی ڈبل کھولنے سے تجارت کی تعدد میں اضافہ ہوتا ہے ، فیسوں کی لاگت اور مالی دباؤ میں اضافہ ہوتا ہے۔ پوزیشن کے سائز کو کنٹرول کرنے کی ضرورت ہے۔
کچھ خطرے کے ساتھ، یہ بہتر ہے کہ حکمت عملی کو مختلف مارکیٹوں میں آزمائشی طور پر آزمائیں۔
خطرے کو کنٹرول کرنے کے لئے سخت اسٹاپ ، محتاط پوزیشننگ ، اور پوزیشنوں کو مناسب طریقے سے کنٹرول کرنے جیسے طریقوں کا استعمال کیا جاسکتا ہے۔ مجموعی طور پر ، اس حکمت عملی میں مضبوط افادیت ہے۔
اس حکمت عملی کو بہتر بنانے کے لیے مندرجہ ذیل پہلوؤں پر غور کیا جا سکتا ہے:
مختلف پیرامیٹرز کے مجموعے کی جانچ کریں ، بہترین پیرامیٹرز کی تلاش کریں۔ پیرامیٹرز کو بہتر بنانے کے لئے قدم بہ قدم ، بے ترتیب تلاش ، جینیاتی الگورتھم وغیرہ کا استعمال کیا جاسکتا ہے۔
مزید اشارے شامل کریں ، جیسے کے ڈی جے ، ولیم اشارے وغیرہ ، اشارے کے گروپ کی تشکیل کریں ، حکمت عملی کی استحکام کو بہتر بنائیں۔
پوزیشن مینجمنٹ کو بہتر بنانا ، متحرک پوزیشن ایڈجسٹمنٹ کے ذریعہ خطرے کو کنٹرول کرنا۔
مشین لرننگ الگورتھم کے ساتھ مل کر ، قیمتوں کے رجحانات اور مستقبل کے رجحانات کا اندازہ لگانے کے لئے مقداری ماڈل کا استعمال کریں۔
مختلف اقسام، وقت کے دورانیوں اور مارکیٹوں میں حکمت عملی کی اہلیت کو بہتر بنانے کے لئے ٹیسٹ کریں.
ابتدائی مرحلے میں رجحانات کو پکڑنے اور الٹ سے پہلے باہر نکلنے کے لئے انٹری ٹائمنگ اور آؤٹ ٹائمنگ کو بہتر بنائیں۔
منافع کو لاک کرنے اور خطرے کو کنٹرول کرنے کے لئے سٹاپ ٹریکنگ اور موزوں سٹاپ جیسے طریقوں کا استعمال کریں۔
بنیادی عوامل، مارکیٹ کی ساخت کے فیصلے کو شامل کریں تاکہ تکنیکی اشارے سے پیدا ہونے والے سگنل کو فلٹر کیا جا سکے۔
اس حکمت عملی میں اشارے کے گروپ کی توثیق ، دو طرفہ تجارت ، نقصان کی روک تھام اور دیگر فوائد ہیں ، جو تجارتی کارکردگی کو بہتر بناسکتے ہیں۔ تاہم ، اصلاح ، جھوٹے سگنل اور دیگر امور پر بھی توجہ دینے کی ضرورت ہے۔ جانچ کو بہتر بنانے کے ذریعے ، یہ حکمت عملی ایک مستحکم ، عملی اور قابل عمل تجارتی نظام بن سکتی ہے۔ یہ ایک کیوینٹری ٹریڈنگ حکمت عملی کے ڈیزائن کی ترقی کی سمت کی نمائندگی کرتا ہے۔
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 2h
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/
// © The_Bigger_Bull
//@version=5
strategy("Best TradingView Strategy", overlay=true, margin_long=0, margin_short=0)
//Bollinger Bands
source1 = close
length1 = input.int(15, minval=1)
mult1 = input.float(2.0, minval=0.001, maxval=50)
basis1 = ta.sma(source1, length1)
dev1 = mult1 * ta.stdev(source1, length1)
upper1 = basis1 + dev1
lower1 = basis1 - dev1
//buyEntry = ta.crossover(source1, lower1)
//sellEntry = ta.crossunder(source1, upper1)
//RSI
ma(source, length, type) =>
switch type
"SMA" => ta.sma(source, length)
"Bollinger Bands" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
"SMMA (RMA)" => ta.rma(source, length)
"WMA" => ta.wma(source, length)
"VWMA" => ta.vwma(source, length)
rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")
up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"
//plot(rsi, "RSI", color=#7E57C2)
//plot(rsiMA, "RSI-based MA", color=color.yellow)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")
bbUpperBand = plot(isBB ? rsiMA + ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Upper Bollinger Band", color=color.green)
bbLowerBand = plot(isBB ? rsiMA - ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Lower Bollinger Band", color=color.green)
fill(bbUpperBand, bbLowerBand, color= isBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill")
//ADX
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
up1 = ta.change(high)
down1 = -ta.change(low)
plusDM = na(up1) ? na : (up1 > down1 and up1 > 0 ? up1 : 0)
minusDM = na(down1) ? na : (down1 > up1 and down1 > 0 ? down1 : 0)
truerange = ta.rma(ta.tr, len)
plus = fixnan(100 * ta.rma(plusDM, len) / truerange)
minus = fixnan(100 * ta.rma(minusDM, len) / truerange)
[plus, minus]
adx(dilen, adxlen) =>
[plus, minus] = dirmov(dilen)
sum = plus + minus
adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)
out = ta.sma(close, 14)
sma1=ta.sma(close,55)
ema200=ta.ema(close,200)
longCondition = (out>sma1) and ta.crossover(source1, lower1)
if (longCondition )
strategy.entry("long", strategy.long)
shortCondition = (out<sma1) and ta.crossunder(source1, lower1)
if (shortCondition )
strategy.entry("short", strategy.short)
stopl=strategy.position_avg_price-50
tptgt=strategy.position_avg_price+100
stopshort=strategy.position_avg_price+50
tptgtshort=strategy.position_avg_price-100
strategy.exit("longclose","long",trail_offset=5,trail_points=45,when=ta.crossover(sma1,out))
strategy.exit("shortclose","short",trail_offset=5,trail_points=45,when=ta.crossover(out,sma1))
//if strategy.position_avg_price<0
plot(sma1 , color=color.blue)
plot(out, color=color.green)
//plot(ema200,color=color.red)