مقدار کے ماڈل پر مبنی اعلی کارکردگی کا الگورتھمک تجارتی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-22 13:14:33
ٹیگز:

img

جائزہ

یہ حکمت عملی مقداری ماڈلز پر مبنی ایک اعلی کارکردگی کا مظاہرہ کرنے والی الگورتھمک تجارتی حکمت عملی ہے۔ یہ موڈیلس حجم ماڈل کو بنیادی ماڈل کے طور پر استعمال کرتی ہے اور اس میں مزید توسیع اور اصلاح کرتی ہے۔ یہ حکمت عملی مارکیٹ میں مقداری تجارتی مواقع کو حاصل کرسکتی ہے اور مستحکم منافع حاصل کرسکتی ہے۔

حکمت عملی کا اصول

اس حکمت عملی کا بنیادی حصہ موڈیلوس حجم ماڈل ہے۔ یہ ماڈل قیمت اور حجم میں تبدیلیوں کا پتہ لگاکر مارکیٹ میں تجارتی مواقع کی مقدار کی نشاندہی کرتا ہے۔ خاص طور پر ، حکمت عملی میں قریبی قیمت ، کھلی قیمت ، اعلی ترین قیمت ، کم ترین قیمت کو یکجا کیا جاتا ہے تاکہ موجودہ K لائن کی سمت کا حساب لگایا جاسکے۔ جب K لائن کی سمت بدل جاتی ہے تو ، تجارتی حجم کی بنیاد پر تجارتی مواقع کی مقدار کا اندازہ لگایا جاتا ہے۔ اس کے علاوہ ، حکمت عملی میں SAR اشارے اور حرکت پذیر اوسط اشارے کو بھی شامل کیا جاتا ہے تاکہ داخلے اور باہر نکلنے کے وقت کا تعین کرنے میں مدد ملے۔

بنیادی ٹریڈنگ منطق یہ ہے کہ جب اشارے منفی سے مثبت میں ٹوٹ جاتا ہے تو طویل عرصے تک جانا اور جب اشارے مثبت سے منفی میں ٹوٹ جاتا ہے تو مختصر ہوجاتا ہے۔ اس کے علاوہ ، خطرات پر قابو پانے کے لئے اسٹاپ نقصان ، منافع حاصل کریں ، ٹریلنگ اسٹاپ نقصان مرتب کریں۔

فوائد کا تجزیہ

اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ موڈیلوس حجم ماڈل کوالٹی ٹریڈنگ کے مواقع کی مؤثر طریقے سے نشاندہی کرنے میں مدد ملتی ہے۔ روایتی تکنیکی اشارے کے مقابلے میں ، یہ ماڈل حجم میں ہونے والی تبدیلیوں پر زیادہ توجہ دیتا ہے ، جو آج کی اعلی تعدد کی مقدار میں تجارت میں بہت عملی ہے۔ اس کے علاوہ ، حکمت عملی کے داخلے کے قواعد نسبتا strict سخت ہیں ، جو مقدار میں تجارتی مواقع سے محروم ہونے سے مؤثر طریقے سے بچ سکتے ہیں جبکہ خرابی کا امکان زیادہ سے زیادہ کم کرسکتے ہیں۔

خطرے کا تجزیہ

اس حکمت عملی کا بنیادی خطرہ یہ ہے کہ موڈیلس حجم ماڈل خود ہی شور سے مکمل طور پر بچ نہیں سکتا ہے۔ جب غیر معمولی مارکیٹ میں اتار چڑھاؤ ہوتا ہے تو ، اس سے غلط تجارتی سگنل پیدا ہوجاتے ہیں۔ اس کے علاوہ ، حکمت عملی میں پیرامیٹر کی ترتیبات بھی حتمی نتائج کو متاثر کریں گی۔

خطرے کو کنٹرول کرنے کے لئے ، پیرامیٹرز کو اس کے مطابق ایڈجسٹ کیا جاسکتا ہے اور معاون فیصلے کے ل other دوسرے اشارے کے ساتھ مل کر۔ اس کے علاوہ ، نقصان کو روکنے اور منافع حاصل کرنے کے لئے معقول حد تک مقرر کیا جانا چاہئے۔

اصلاح کی ہدایات

اس حکمت عملی کو بہتر بنانے کے لئے ابھی بھی گنجائش ہے۔ مثال کے طور پر ، مشین لرننگ الگورتھم کو پیرامیٹر کی ترتیبات کو متحرک طور پر بہتر بنانے پر غور کیا جاسکتا ہے۔ یا فیصلے کی درستگی کو بہتر بنانے کے لئے جذبات کا تجزیہ اور دیگر اشارے کو جوڑیں۔ اس کے علاوہ ، ایک کثیر قسم کے ثالثی ماڈل کے قیام کے لئے مختلف اقسام کے مابین ارتباط کا مطالعہ کیا جاسکتا ہے۔

خلاصہ

خلاصہ یہ ہے کہ یہ حکمت عملی موڈیلس حجم مقداری ماڈل کے فوائد کا استعمال کرتی ہے اور اعلی آپریشنل کے ساتھ الگورتھمک تجارتی حکمت عملیوں کا ایک مجموعہ تیار کرتی ہے۔ اصل تجارت میں نسبتا good اچھی اور مستحکم واپسی حاصل کرنے کے لئے پیرامیٹر ٹوننگ ، ماڈل کی توسیع ، مشین لرننگ وغیرہ کے ذریعہ اسے مزید بہتر اور بہتر بنایا جاسکتا ہے۔


/*backtest
start: 2022-12-15 00:00:00
end: 2023-12-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


//@version=3
strategy(title="strategy modelius volume model ", shorttitle="mvm",overlay=true, calc_on_order_fills=true, default_qty_type=strategy.percent_of_equity, default_qty_value=50, overlay=false)

method = input(defval="ATR", options=["ATR", "Traditional", "Part of Price"], title="Renko Assignment Method")
methodvalue = input(defval=14.0, type=float, minval=0, title="Value")
pricesource = input(defval="Close", options=["Close", "Open / Close", "High / Low"], title="Price Source")
useClose = pricesource == "Close"
useOpenClose = pricesource == "Open / Close" or useClose
useTrueRange = input(defval="Auto", options=["Always", "Auto", "Never"], title="Use True Range instead of Volume")
isOscillating=input(defval=true, type=bool, title="Oscillating")
normalize=input(defval=false, type=bool, title="Normalize")
vol = useTrueRange == "Always" or (useTrueRange == "Auto" and na(volume))? tr : volume
op = useClose ? close : open
hi = useOpenClose ? close >= op ? close : op : high
lo = useOpenClose ? close <= op ? close : op : low

if method == "ATR"
    methodvalue := atr(round(methodvalue))
if method == "Part of Price"
    methodvalue := close/methodvalue

currclose = na
prevclose = nz(currclose[1])
prevhigh = prevclose + methodvalue
prevlow = prevclose - methodvalue
currclose := hi > prevhigh ? hi : lo < prevlow ? lo : prevclose

direction = na
direction := currclose > prevclose ? 1 : currclose < prevclose ? -1 : nz(direction[1])
directionHasChanged = change(direction) != 0
directionIsUp = direction > 0
directionIsDown = direction < 0

barcount = 1
barcount := not directionHasChanged and normalize ? barcount[1] + barcount : barcount
vol := not directionHasChanged ? vol[1] + vol : vol
res = barcount > 1 ? vol/barcount : vol


x=isOscillating and directionIsDown ? -res : res

TP = input(0) * 10
SL = input(0) * 10
TS = input(1) * 10
TO = input(3) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na
TOP = (TO > 0) ? TO : na

longCondition = crossover(x,0)
if (longCondition)
    strategy.entry("Long", strategy.long)


shortCondition = crossunder(x,0)
if (shortCondition)
    strategy.entry("Short", strategy.short)

strategy.exit("Close Short", "Short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)
strategy.exit("Close Long", "Long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP, trail_offset=TOP)

مزید