
یہ حکمت عملی اسٹاک ٹریڈنگ کے لئے متعدد فاریکس ماڈلز کا استعمال کرتے ہوئے کی گئی ہے۔ یہ مختلف مارکیٹ کے حالات میں تجارتی مواقع کو پکڑنے کے لئے پیکیج لائن ماڈل ، کھوکھلی فاریکس ٹریڈنگ کے فوائد اور فوائد اور کراس اسٹار ماڈل کو جوڑتا ہے۔
اس حکمت عملی کا بنیادی منطق یہ ہے کہ کئی مورفولوجیکل فیصلے کے قواعد بنائے جائیں اور پھر ان قواعد کو جوڑ کر تجارتی سگنل تیار کیے جائیں۔
سب سے پہلے ، اس نے کچھ بنیادی متغیرات کی وضاحت کی ہے جو اس کی خصوصیات کو بیان کرتے ہیں ، جیسے کہ اس کی جسمانی سائز ، اس کی قیمت اوپن ، اس کی قیمت قریب ، وغیرہ۔
اس کے بعد ، اس نے تین ٹریڈنگ بار کی اقسام کی وضاحت کی ہے ، جس میں اس کی قیمت اور اس کی قیمت کے مابین تعلقات کی بنیاد پر وضاحت کی گئی ہے۔
اس کی بنیاد پر، 3 کلو میٹر کے فیصلے کے اصول بنائے گئے ہیں:
اینگلفنگ پیٹرن: موجودہ K لائن اوپر کی K لائن کو گھیر لیتی ہے ، جس سے خریدنے یا بیچنے کا اشارہ ہوتا ہے۔
ہارامی پیٹرن: اوپر کی K لائن موجودہ K لائن کو گھیرتی ہے ، جس سے خریدنے یا بیچنے کا اشارہ ملتا ہے۔
حارامی کراس پیٹرن: خالی دل کی ہڈی اور کراس اسٹار کا مجموعہ ، خریدنے یا بیچنے کا اشارہ پیدا کرتا ہے۔
ان کیلنڈر فارمیٹ کے قواعد کے مطابق ، خریداری اور فروخت کے اوقات کا تعین کیا جاسکتا ہے۔ اور اس کے ساتھ ساتھ کچھ اضافی شرائط بھی شامل ہیں ، جیسے ٹریڈنگ ٹائم رینج کی حد ، غیر ضروری ٹریڈنگ سگنل کو فلٹر کرنے کے لئے۔
ٹریڈنگ کے حصے میں ، پوزیشن رکھنے کی صورتحال کا اندازہ لگایا جائے گا ، اگر سگنل کی سمت کے برعکس ہو تو ، پہلے پوزیشن ختم ہوجائے گی ، اور پھر سگنل کی سمت کے مطابق پوزیشن کھولی جائے گی۔
متعدد شکلوں کا امتزاج ، مستحکم۔ ایک ہی شکل خاص طور پر مارکیٹ کے حالات سے زیادہ متاثر ہوسکتی ہے ، مجموعہ میں استعمال ہونے والی شکلیں استحکام کو بڑھا سکتی ہیں۔
اسی سمت میں شکل کی تصدیق ، جامع فیصلہ ، غلط فہمی سے بچیں۔ مختلف شکل کے ماڈل مختلف زاویوں سے رجحانات کا فیصلہ کرتے ہیں ، سگنل کو باہمی توثیق کرسکتے ہیں۔
پیرامیٹرز کو ایڈجسٹ کیا جاسکتا ہے ، اور ان کی موافقت پذیر ہے۔ صارفین کو مختلف شکل کے ماڈل کو آزادانہ طور پر منتخب کرنے ، ٹریڈنگ ٹائم رینج کو ایڈجسٹ کرنے ، اور مارکیٹ میں تبدیلیوں کے ل.
ایک اچھی ٹریڈنگ منطق۔ پوزیشن رکھنے کے فیصلے اور روکنے کے نقصان سے باہر نکلنے کے منطق کے ساتھ مل کر ، خطرے کو مؤثر طریقے سے کنٹرول کیا جاسکتا ہے۔
کثیر پیرامیٹرز کے مجموعے پیچیدگی میں اضافہ کرتی ہیں۔ ہر پیرامیٹرز کے مجموعے کی مماثلت کی جانچ کی ضرورت ہوتی ہے ، اور پیرامیٹرز کے نامناسب مجموعے اثر کو کم کرسکتے ہیں۔
shape پیرامیٹرز کی ترتیب تجربے پر منحصر ہے۔ shape پیرامیٹرز کو ایڈجسٹ کرنے کے لئے تجربے کو جمع کرنے کی ضرورت ہوتی ہے جیسے کہ کیا اس کا سائز مناسب ہے۔
ایک طرفہ پوزیشن رکھنے سے پیدا ہونے والا خطرہ۔ صرف زیادہ یا صرف کم کرنے سے منافع کی گنجائش محدود ہوجائے گی۔ پیرامیٹرز کی ترتیب کے ذریعہ ایک ہی وقت میں زیادہ کم کرنا ممکن ہے۔
ٹرینڈ الٹ پوائنٹس کو یاد کیا جاسکتا ہے۔ یہ حکمت عملی شکل کی شناخت پر مبنی ہے ، لہذا اس کا موثر اندازہ لگانا ممکن نہیں ہے۔ وقت کا اندازہ لگانے کے لئے دوسرے اشارے کے ساتھ مل کر استعمال کیا جاسکتا ہے۔
نقصان کی روک تھام کی حکمت عملی کو بڑھانا تاکہ غیر جانبدار پوزیشنوں کے خطرات کو کم کیا جاسکے۔
دوسرے تکنیکی اشارے کے ساتھ مل کر ، بڑے رجحانات کا اندازہ لگائیں ، مخالف تجارت سے گریز کریں۔ جیسے MACD ، بولنگر بینڈ وغیرہ۔
مختلف نسلوں کے پیرامیٹرز کی ترجیحات کی جانچ کریں ، مختلف نسلوں کے لئے موزوں شکل کا مجموعہ بنائیں۔
مشین لرننگ الگورتھم کو شامل کریں تاکہ AI کے ذریعہ پیرامیٹرز کی اصلاح اور شکل کی شناخت میں مدد ملے۔
اس حکمت عملی نے متعدد مرجانوں کے فوائد کو مربوط کرکے ایک نسبتا stable مستحکم اور قابل اعتماد شارٹ لائن ٹریڈنگ سسٹم تشکیل دیا ہے۔ تاہم ، زیادہ پیچیدہ مارکیٹ کے ماحول کے مطابق کچھ پیرامیٹرز کی ترتیب اور رسک کنٹرول کو مزید بہتر بنانے کی ضرورت ہے۔ مجموعی طور پر ، اس حکمت عملی کا نظریہ معقول ہے ، اور مشین لرننگ جیسے ذہین اصلاحات کے لئے کافی تجربہ اور اعداد و شمار کی بنیاد پر ، امکانات وسیع ہیں۔
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=3
strategy(title = "Noro's CandleModels Tests", shorttitle = "CandleModels tests", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
eng = input(true, defval = true, title = "Model Engulfing")
har = input(true, defval = true, title = "Model Harami")
harc = input(true, defval = true, title = "Model Harami Cross")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
rev = input(false, defval = false, title = "Reversive trading")
//Body
body = abs(close - open)
abody = sma(body, 10)
//MinMax Bars
min = min(close, open)
max = max(close, open)
//Signals
bar = close > open ? 1 : close < open ? -1 : 0
doji = body < abody / 10
up1 = eng and bar == 1 and bar[1] == -1 and min <= min[1] and max >= max[1]
dn1 = eng and bar == -1 and bar[1] == 1 and min <= min[1] and max >= max[1]
up2 = har and bar == 1 and bar[1] == -1 and min >= min[1] and max <= max[1]
dn2 = har and bar == -1 and bar[1] == 1 and min >= min[1] and max <= max[1]
up3 = harc and doji and bar[1] == -1 and low >= min[1] and high <= max[1]
dn3 = harc and doji and bar[1] == 1 and low >= min[1] and high <= max[1]
exit = ((strategy.position_size > 0 and bar == 1) or (strategy.position_size < 0 and bar == -1)) and body > abody / 2 and rev == false
//Trading
if up1 or up2 or up3
if strategy.position_size < 0
strategy.close_all()
strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if dn1 or dn2 or dn3
if strategy.position_size > 0
strategy.close_all()
strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59) or exit
strategy.close_all()