
کوانٹمائزیشن کی چمک یہ ایک مجموعہ حکمت عملی ہے جس میں اسٹوکاسٹک اشارے اور او ٹی ٹی اشارے استعمال کیے جاتے ہیں۔ حکمت عملی اسٹوکاسٹک اشارے کو خریدنے اور بیچنے کے سگنل پیدا کرنے کے لئے استعمال کرتی ہے ، اور او ٹی ٹی اشارے کے ساتھ مل کر سگنل کو فلٹر کرتی ہے ، تاکہ بڑے رجحان کو پکڑنے کی کوشش کی جاسکے اور مارکیٹ میں اتار چڑھاؤ کی وجہ سے جھوٹے سگنل کے اثرات کو کم کیا جاسکے۔ اس حکمت عملی کا تفصیلی جائزہ اس مضمون میں لیا جائے گا۔
اس حکمت عملی کا بنیادی خیال یہ ہے کہ او ٹی ٹی اشارے کو اسٹوکاسٹک اشارے پر چڑھا کر سگنل فلٹر کیا جائے۔ اسٹوکاسٹک اشارے قیمتوں کا موازنہ کسی مخصوص مدت کے دوران اعلی ترین اور کم ترین قیمتوں سے کرتے ہیں تاکہ یہ معلوم کیا جاسکے کہ آیا قیمتیں انتہائی علاقے میں ہیں۔ او ٹی ٹی اشارے رجحانات کو ٹریک کرنے کے لئے متحرک اوسط اور متحرک اسٹاپ نقصانات کا استعمال کرتے ہیں۔
کوڈ میں اسٹوکاسٹک کی اونچائی 1080 ، کم 1020 ، اور اسٹوچاسٹک کی درمیانی حد کے درمیان فاصلہ ہے۔ اسٹوکاسٹک خرید / فروخت سگنل پیدا کرنے پر ، کوڈ او ٹی ٹی کے اشارے کے مطابق سگنل کی تاثیر کا فیصلہ کرے گا۔ اگر قیمت او ٹی ٹی اوسط لائن کو اوپر کی طرف سے عبور کرتی ہے تو ، خریدنے کا اشارہ دیا جاتا ہے ، اور اگر قیمت او ٹی ٹی اوسط لائن کو نیچے کی طرف سے عبور کرتی ہے تو ، فروخت کا اشارہ دیا جاتا ہے۔
اس طرح کا مجموعہ اسٹوکاسٹک کا استعمال کرتا ہے جو اوورلوڈ اور اوورلوڈ کا تعین کرتا ہے اور ایک داخلہ سگنل بھیجتا ہے۔ او ٹی ٹی رجحانات کا سراغ لگانے کے لئے ذمہ دار ہے ، اور اس کے نتیجے میں سگنل کی درستگی اور اتار چڑھاؤ کو بہتر بنانے کے لئے نقصان دہ فلٹرز کا استعمال کرتا ہے جو بہت زیادہ زلزلے کی صورتحال کی وجہ سے پیدا ہونے والے جھوٹے سگنل کو ختم کرتا ہے۔
اس حکمت عملی میں اسٹوکاسٹک اور او ٹی ٹی اشارے کا مجموعہ استعمال کیا گیا ہے ، جس سے مندرجہ ذیل پہلوؤں کو بہتر بنایا گیا ہے:
مجموعی طور پر ، اس حکمت عملی نے او ٹی ٹی کا استعمال کرتے ہوئے اسٹوکاسٹک سگنل کو فلٹر کیا ، جس سے سگنل کے معیار اور حکمت عملی کی آمدنی کو مؤثر طریقے سے بہتر بنایا گیا ، جبکہ تجارت کی تعداد اور حکمت عملی کی اتار چڑھاؤ کو کم کیا گیا ، جس سے قریب تر رجحان ، کم خطرہ اور اعلی آمدنی کا اثر حاصل ہوا۔
مذکورہ بالا خطرات کو بہتر بنانے کے لئے مندرجہ ذیل اقدامات کیے جاسکتے ہیں:
اس حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
مختلف مارکیٹوں اور اسٹاک کی اقسام کے مطابق پیرامیٹرز کو ایڈجسٹ کریں۔ اب ڈیفالٹ عام ہیں ، لہذا مختلف اسٹاک کے لئے انفرادی طور پر جانچ کی جاسکتی ہے تاکہ پیرامیٹرز کا بہترین مجموعہ تلاش کیا جاسکے۔
اسٹاپ اور موبائل اسٹاپ متعارف کرایا گیا۔ اب متحرک فکسڈ اسٹاپ استعمال کیا جاتا ہے ، نقصانات اور فوائد کو متحرک طور پر ٹریک نہیں کیا جاسکتا ہے۔ حکمت عملی کے خطرے سے متعلق فوائد کو مزید کنٹرول کرنے کے لئے موبائل اسٹاپ اور اسٹاپ متعارف کرانے کی جانچ کی جاسکتی ہے۔
سگنل فیصلے کی منطق کو بہتر بنائیں۔ موجودہ فیصلے کی منطق نسبتا simple آسان ہے ، قیمت کے اوپر اور نیچے کی طرف سے براہ راست نشان خرید اور فروخت سگنل۔ سگنل کی وشوسنییتا کو یقینی بنانے کے لئے مزید اشارے اور قیمت کی شکل کے فیصلے کے ساتھ مل کر غور کیا جاسکتا ہے۔
پوزیشن کھولنے کی شرائط اور فلٹرنگ میکانزم میں اضافہ کریں۔ موجودہ حکمت عملی ہر سگنل کو یکساں طور پر سنبھالتی ہے۔ پوزیشن کھولنے کی شرائط جیسے مقدار کے اشارے ، حجم کے اشارے ، اور جعلی سگنلوں کو فلٹر کرنے کے لئے ایک مخصوص سگنل ٹائم ونڈو میں اضافہ کیا جاسکتا ہے۔
او ٹی ٹی کے ساتھ مختلف اشارے کے امتزاج کی جانچ کریں۔ اسٹوچاسٹک اور او ٹی ٹی کا مجموعہ اب استعمال کیا جاتا ہے۔ دیگر اشارے جیسے ایم اے سی ڈی ، آر ایس آئی اور او ٹی ٹی کے ساتھ امتزاج کی جانچ کی جاسکتی ہے۔
انضمام فنڈ مینجمنٹ اور پوزیشن مینجمنٹ ماڈیول۔ اب فنڈ مینجمنٹ اور پوزیشن کنٹرول کا کوئی طریقہ کار نہیں ہے ، مکمل طور پر اسٹاپ نقصان پر انحصار کرتا ہے۔ مختلف قسم کے فنڈ مینجمنٹ اور پوزیشن مینجمنٹ کے طریقوں کی جانچ کی جاسکتی ہے تاکہ انفرادی اور مجموعی خطرات کو مزید کنٹرول کیا جاسکے۔
کوانٹمائزیشن کی چمک یہ ایک کوانٹمائزیشن حکمت عملی ہے جو اسٹوکاسٹک اور او ٹی ٹی اشارے کے ساتھ باضابطہ طور پر ملتی ہے۔ یہ دونوں اشارے کے باہمی فوائد کا استعمال کرتا ہے ، جس سے سگنل کی درستگی میں اضافہ ہوتا ہے اور بڑے رجحانات کو مؤثر طریقے سے پکڑنے کے ساتھ ساتھ خطرے کو بھی کم کیا جاتا ہے۔
اس حکمت عملی میں کم غلطی کی شرح ، سگنل کی وضاحت اور کم اتار چڑھاؤ کی اہمیت ہے۔ اس سے سگنل کی وشوسنییتا میں اضافہ ہوتا ہے ، اسٹاپ نقصان کی سطح کو بہتر بنایا جاتا ہے ، اور تجارت کی تعدد کو کم کیا جاتا ہے۔ یہ ایک قابل قدر مقدار کی حکمت عملی ہے۔
اس کے ساتھ ساتھ ، اس حکمت عملی میں بہتری کی گنجائش موجود ہے۔ پیرامیٹرز کو بہتر بنانے ، نقصان کو روکنے کے طریقہ کار کو بہتر بنانے ، سگنل اور فلٹرنگ کے طریقہ کار کو بڑھانے جیسے ذرائع سے ، اس حکمت عملی کو زیادہ مستحکم ، خودکار اور ذہین بنانے کی طرف بڑھایا جاسکتا ہے ، جو ہمارے اگلے کام کا مقصد ہے۔
/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © KivancOzbilgic
//created by: @Anil_Ozeksi
//developer: ANIL ÖZEKŞİ
//author: @kivancozbilgic
strategy(title="Stochastic Optimized Trend Tracker", shorttitle="SOTT", format=format.price, precision=2)
periodK = input(250, title="%K Length", minval=1)
smoothK = input(50, title="%K Smoothing", minval=1)
src1 = input(close, title="Source")
length=input(3, "OTT Period", minval=1)
percent=input(0.618, "OTT Percent", type=input.float, step=0.1, minval=0)
showsupport = input(title="Show Support Line?", type=input.bool, defval=false)
showsignalsc = input(title="Show Stochastic/OTT Crossing Signals?", type=input.bool, defval=false)
Var_Func1(src1,length)=>
valpha1=2/(length+1)
vud11=src1>src1[1] ? src1-src1[1] : 0
vdd11=src1<src1[1] ? src1[1]-src1 : 0
vUD1=sum(vud11,9)
vDD1=sum(vdd11,9)
vCMO1=nz((vUD1-vDD1)/(vUD1+vDD1))
VAR1=0.0
VAR1:=nz(valpha1*abs(vCMO1)*src1)+(1-valpha1*abs(vCMO1))*nz(VAR1[1])
VAR1=Var_Func1(src1,length)
k = Var_Func1(stoch(close, high, low, periodK), smoothK)
src=k+1000
Var_Func(src,length)=>
valpha=2/(length+1)
vud1=src>src[1] ? src-src[1] : 0
vdd1=src<src[1] ? src[1]-src : 0
vUD=sum(vud1,9)
vDD=sum(vdd1,9)
vCMO=nz((vUD-vDD)/(vUD+vDD))
VAR=0.0
VAR:=nz(valpha*abs(vCMO)*src)+(1-valpha*abs(vCMO))*nz(VAR[1])
VAR=Var_Func(src,length)
h0 = hline(1080, "Upper Band", color=#606060)
h1 = hline(1020, "Lower Band", color=#606060)
fill(h0, h1, color=#9915FF, transp=80, title="Background")
plot(k+1000, title="%K", color=#0094FF)
MAvg=Var_Func(src, length)
fark=MAvg*percent*0.01
longStop = MAvg - fark
longStopPrev = nz(longStop[1], longStop)
longStop := MAvg > longStopPrev ? max(longStop, longStopPrev) : longStop
shortStop = MAvg + fark
shortStopPrev = nz(shortStop[1], shortStop)
shortStop := MAvg < shortStopPrev ? min(shortStop, shortStopPrev) : shortStop
dir = 1
dir := nz(dir[1], dir)
dir := dir == -1 and MAvg > shortStopPrev ? 1 : dir == 1 and MAvg < longStopPrev ? -1 : dir
MT = dir==1 ? longStop: shortStop
OTT=MAvg>MT ? MT*(200+percent)/200 : MT*(200-percent)/200
plot(showsupport ? MAvg : na, color=#0585E1, linewidth=2, title="Support Line")
OTTC = #B800D9
pALL=plot(nz(OTT[2]), color=OTTC, linewidth=2, title="OTT", transp=0)
alertcondition(cross(src, OTT[2]), title="Price Cross Alert", message="OTT - Price Crossing!")
alertcondition(crossover(src, OTT[2]), title="Price Crossover Alarm", message="PRICE OVER OTT - BUY SIGNAL!")
alertcondition(crossunder(src, OTT[2]), title="Price Crossunder Alarm", message="PRICE UNDER OTT - SELL SIGNAL!")
buySignalc = crossover(src, OTT[2])
plotshape(buySignalc and showsignalsc ? OTT*0.995 : na, title="Buy", text="Buy", location=location.absolute, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0)
sellSignallc = crossunder(src, OTT[2])
plotshape(sellSignallc and showsignalsc ? OTT*1.005 : na, title="Sell", text="Sell", location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0)
dummy0 = input(true, title = "=Backtest Inputs=")
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromYear = input(defval = 2005, title = "From Year", minval = 2005)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToYear = input(defval = 9999, title = "To Year", minval = 2006)
Start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
Finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
Timerange() =>
time >= Start and time <= Finish ? true : false
if buySignalc
strategy.entry("Long", strategy.long,when=Timerange())
if sellSignallc
strategy.entry("Short", strategy.short,when=Timerange())