
یہ حکمت عملی کیون ڈیوی کی مفت خام تیل کی فیوچر ٹریڈنگ حکمت عملی پر مبنی ہے۔ اس حکمت عملی میں خام تیل کی مارکیٹ میں رجحانات کا اندازہ لگانے کے لئے ADX اشارے کا استعمال کیا گیا ہے ، جس میں قیمتوں کے توڑنے کے اصول کے ساتھ مل کر ، ایک آسان اور عملی خام تیل کی خودکار تجارت کی حکمت عملی حاصل کی گئی ہے۔
یہ حکمت عملی بنیادی طور پر ADX اشارے کے رجحانات پر انحصار کرتی ہے اور رجحانات کی صورت میں ، قیمتوں میں طے شدہ دورانیے کے وقفے کے مطابق تجارتی سگنل پیدا کرتی ہے۔ اس حکمت عملی کی پوری منطق بہت آسان اور واضح ہے۔
یہ حکمت عملی مجموعی طور پر ایک بہت ہی عملی خام تیل کی تجارت کی حکمت عملی ہے۔ یہ ADX اشارے کا استعمال کرتے ہوئے رجحان کا تعین کرنے کے لئے بہت معقول ہے ، قیمتوں میں توڑنے کا اصول آسان ہے ، اور اس کی واپسی کا اثر اچھا ہے۔ کیون ڈیوی کی ایک عوامی مفت حکمت عملی ہونے کے ساتھ ، اس کی عملی طور پر بہت مضبوط وشوسنییتا ہے۔ اگرچہ حکمت عملی میں بھی کچھ بہتری کی گنجائش موجود ہے ، لیکن یہ حکمت عملی ابتدائی اور چھوٹے سرمایہ کاروں کے لئے ایک بہت ہی مناسب انتخاب ہے۔
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// Strategy idea coded from EasyLanguage to Pinescript
//@version=5
strategy("Kevin Davey Crude free crude oil strategy", shorttitle="CO Fut", format=format.price, precision=2, overlay = true, calc_on_every_tick = true)
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
up = ta.change(high)
down = -ta.change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 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)
plot(sig, color=color.red, title="ADX")
buy = sig > 10 and (close - close[65]) > 0 and (close - close[65])[1] < 0
sell = sig > 10 and (close - close[65]) < 0 and (close - close[65])[1] > 0
plotshape(buy, style = shape.arrowup, location = location.belowbar,size = size.huge)
plotshape(sell, style = shape.arrowdown, location = location.abovebar,size = size.huge)
if buy
strategy.entry("long", strategy.long)
if sell
strategy.entry("short", strategy.short)
if strategy.position_size != 0
strategy.exit("long", profit = 450, loss = 300)
strategy.exit("short", profit = 450, loss = 300)
// GetTickValue() returns the currency value of the instrument's
// smallest possible price movement.
GetTickValue() =>
syminfo.mintick * syminfo.pointvalue
// On the last historical bar, make a label to display the
// instrument's tick value
if barstate.islastconfirmedhistory
label.new(x=bar_index + 1, y=close, style=label.style_label_left,
color=color.black, textcolor=color.white, size=size.large,
text=syminfo.ticker + " has a tick value of:\n" +
syminfo.currency + " " + str.tostring(GetTickValue()))