
اس حکمت عملی میں بورن بینڈ اشارے اور حجم اشارے شامل ہیں تاکہ اعلی حجم کے ماحول میں بورن بینڈ کو توڑنے کے لئے مضبوط مواقع کی نشاندہی کی جاسکے۔
اس حکمت عملی میں بنیادی طور پر تین پہلوؤں پر غور کیا جاتا ہے: قیمت ، رفتار اور رجحان۔ جب قیمتوں میں بلین بائٹ کو توڑ کر خریداری کے علاقے میں داخل ہوتا ہے تو ، بہت سارے فنڈز کی آمد کے نتیجے میں تجارت میں اضافہ ہوتا ہے ، جس سے ظاہر ہوتا ہے کہ اس کی مضبوط حمایت اور متحرک طاقت موجود ہے۔ اس وقت زیادہ پوزیشنیں کھولی جائیں۔ اس کے بعد ، چلتی اوسط کے ساتھ مل کر ، پوزیشنوں کو روکنے سے بچنے کے لئے ، پوزیشنوں کی حرکت کا اندازہ لگائیں۔ قیمت کے انتخاب ، فنڈز کی بروقت نگرانی اور خالی پوزیشنوں کے خطرے کو کم کرنے کے ذریعہ ، پوزیشنوں سے حاصل ہونے والی آمدنی حاصل کریں۔
ٹریڈنگ سگنل درست ہے ، جعلی بریک سے بچنے کے لئے۔ تجارتی حجم کے اشارے کے ساتھ مل کر ، پوزیشن کا خطرہ کم کرنے کے لئے صرف حقیقی مضبوط حالات میں خریدیں۔
حرکت پذیر اوسط کے ذریعے رجحان کی سمت کا فیصلہ کرنے کے لئے ، وقت پر نقصان کو روکنے اور خالی پوزیشن کے نقصان کو کم کرنے کے لئے۔
متعدد اشارے کو مربوط کرنے کے لئے ایک مقداری حکمت عملی کو نافذ کیا گیا ہے جس میں پیرامیٹرز کو مختلف اقسام اور ادوار کے مطابق لچکدار انداز میں ایڈجسٹ کیا جاسکتا ہے۔
کوڈ کی ساخت واضح ہے ، حکمت عملی پڑھنے کی اہلیت میں اضافہ ہوا ہے۔ اشارے کے حساب کتاب ، تجارتی سگنل ، کھلی پوزیشن منطق وغیرہ کو منظم کرنے کے لئے ماڈیولز کو تقسیم کریں ، تاکہ بعد میں دیکھ بھال میں آسانی ہو۔
برن بینڈ ایک اتار چڑھاؤ کی حد کے اشارے کے طور پر ، انتہائی حالات کے لئے ناقابل عمل ہوسکتا ہے۔ اگر غیر معمولی اتار چڑھاؤ ہوتا ہے تو ، خریدنے کا اشارہ ضائع ہوجائے گا یا جھوٹا اشارہ پیدا ہوگا۔
جب تجارت کی مقدار کم ہو تو حکمت عملی منافع بخش نہیں ہوسکتی ہے۔ اگر مارکیٹ میں مجموعی طور پر تجارت کی مقدار کم ہو تو ، خریدنے کا اشارہ پیدا کرنے کے لئے بھی منافع بخش ہونا مشکل ہے۔
یہ بھی ممکن ہے کہ ایک رجحان کا اندازہ لگانے والے اشارے کے طور پر چلنے والی اوسط بھی ناکام ہوجائے ، اور اس سے مکمل طور پر نقصان کو روکنے کی ضمانت نہیں دی جاسکتی ہے۔
پیرامیٹرز کی غلط ترتیب حکمت عملی کی آمدنی کو بھی متاثر کرتی ہے۔ مثال کے طور پر ، تجارتی وقت کی ونڈو کو بہت مختصر ترتیب دیا گیا ہے ، اس کی وجہ سے رجحان میں ردوبدل کی کمی واقع ہوگی۔
مزید تکنیکی اشارے شامل کرنے پر غور کیا جاسکتا ہے جو رجحانات کا فیصلہ کرتے ہیں ، مزاحمت کی سطح کی حمایت کرتے ہیں ، اور نقصانات کو روکنے کے لئے اثر کو بہتر بناتے ہیں ، جیسے K لائن کی شکل ، چینل اشارے ، کلیدی معاونت کی سطح وغیرہ۔
مشین لرننگ ماڈل میں حقیقی کامیابیوں کا اندازہ لگانے کے امکانات کو بڑھانا اور جعلی سگنل کی شرح کو کم کرنا۔ مثال کے طور پر ایل ایس ٹی ایم جیسے گہری سیکھنے والے ماڈل۔
فنڈ مینجمنٹ کی حکمت عملی کو بہتر بنانا ، جیسے متحرک پوزیشنوں کو ایڈجسٹ کرنا ، اسٹاپ نقصان کی لائنوں کا سراغ لگانا ، وغیرہ۔
مزید اقسام اور ٹائم پیریڈ پیرامیٹرز کی جانچ کریں۔ برن بینڈ پیرامیٹرز ، ٹرانزیکشن حجم پیرامیٹرز وغیرہ کو ایڈجسٹ کریں ، مارکیٹ میں موافقت کی حکمت عملی کو بہتر بنائیں۔
اس حکمت عملی میں برن بینڈ اشارے اور تجارت کے حجم کے اشارے کو مربوط کیا گیا ہے ، جس میں مضبوط حالات میں خریدنے کا وقت کی نشاندہی کی گئی ہے۔ اس کے ساتھ ساتھ ایک متحرک اوسط اشارے کا استعمال کرتے ہوئے رجحان کا فیصلہ کیا گیا ہے ، بروقت اسٹاپ نقصانات۔ اس میں ایک ہی تکنیکی اشارے کے مقابلے میں زیادہ درستگی اور اسٹاپ نقصان کی صلاحیت ہے۔ ماڈیولر ڈیزائن ، رجحان کا فیصلہ اور اسٹاپ نقصان کی حکمت عملی کا اضافہ ، جس میں ایک بریک ٹریڈنگ حکمت عملی تشکیل دی گئی ہے جس کی دیکھ بھال میں آسانی سے اصلاح کی جاسکتی ہے۔
/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 1h
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/
// © KAIST291
//@version=4
initial_capital=1000
strategy("prototype", overlay=true)
length1=input(1)
length3=input(3)
length7=input(7)
length9=input(9)
length14=input(14)
length20=input(20)
length60=input(60)
length120=input(120)
ma1= sma(close,length1)
ma3= sma(close,length3)
ma7= sma(close,length7)
ma9= sma(close,length9)
ma14=sma(close,length14)
ma20=sma(close,length20)
ma60=sma(close,length60)
ma120=sma(close,length120)
rsi=rsi(close,14)
// BUYING VOLUME AND SELLING VOLUME //
BV = iff( (high==low), 0, volume*(close-low)/(high-low))
SV = iff( (high==low), 0, volume*(high-close)/(high-low))
vol = iff(volume > 0, volume, 1)
dailyLength = input(title = "Daily MA length", type = input.integer, defval = 50, minval = 1, maxval = 100)
weeklyLength = input(title = "Weekly MA length", type = input.integer, defval = 10, minval = 1, maxval = 100)
//-----------------------------------------------------------
Davgvol = sma(volume, dailyLength)
Wavgvol = sma(volume, weeklyLength)
//-----------------------------------------------------------
length = input(20, minval=1)
src = input(close, title="Source")
mult = input(2.0, minval=0.001, maxval=50, title="StdDev")
mult2= input(1.5, minval=0.001, maxval=50, title="exp")
mult3= input(1.0, minval=0.001, maxval=50, title="exp1")
mult4= input(2.5, minval=0.001, maxval=50, title="exp2")
basis = sma(src, length)
dev = mult * stdev(src, length)
upper = basis + dev
lower = basis - dev
dev2= mult2 * stdev(src, length)
Supper= basis + dev2
Slower= basis - dev2
dev3= mult3 * stdev(src, length)
upper1= basis + dev3
lower1= basis - dev3
dev4= mult4 * stdev(src, length)
upper2=basis + dev4
lower2=basis - dev4
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))
//----------------------------------------------------
exit=(close-strategy.position_avg_price / strategy.position_avg_price*100)
bull=( BV>SV and BV>Davgvol)
bull2=(BV>SV and BV>Davgvol)
bux =(close>Supper and close>Slower and volume<Davgvol)
bear=(SV>BV and SV>Davgvol)
con=(BV>Wavgvol and rsi>80)
imInATrade = strategy.position_size != 0
highestPriceAfterEntry = valuewhen(imInATrade, high, 0)
// STRATEGY LONG //
if (bull and close>upper1 and close>Supper and high>upper and rsi<80)
strategy.entry("Long",strategy.long)
if (strategy.position_avg_price*1.02<close)
strategy.close("Long")
else if (low<ma9 and strategy.position_avg_price<close)
strategy.close("Long")
else if (ma20>close and strategy.position_avg_price<close )
strategy.close("Long")
else if (rsi>80 and strategy.position_avg_price<close)
strategy.close("Long")
else if (strategy.openprofit < strategy.position_avg_price*0.9-close)
strategy.close("Long")
else if (high<upper and strategy.position_avg_price<close)
strategy.close("Long")
//////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////
strategy.entry("Short",strategy.short,when=low<ma20 and low<lower1 and close<Slower and crossunder(ma60,ma120))
if (close<strategy.position_avg_price*0.98)
strategy.close("Short")
else if (rsi<20)
strategy.close("Short")