
یہ حکمت عملی ایک طویل قطار کی پیمائش کرنے کے لئے ایک مقداری حکمت عملی تیار کرنے کے لئے تیار کی گئی ہے ، جو کہ متحرک اوسط اور لین دین کی مقدار پر مبنی ہے۔ جب اسٹاک کی قیمت 20 دن کی لائن پر کھڑی ہوتی ہے ، اور اس دن کی خرید و فروخت کی تعداد پچھلے n دن کی اوسط سے زیادہ ہوتی ہے تو ، اسے ایک کثیر سر کی حالت میں سمجھا جاتا ہے ، اور جب اسٹاک کی قیمت گرتی ہے ، اور اس دن کی فروخت خرید و فروخت سے زیادہ ہوتی ہے اور پچھلے n دن کی اوسط سے زیادہ ہوتی ہے تو ، اسے ایک خالی سر کی حالت میں سمجھا جاتا ہے۔
یہ حکمت عملی بنیادی طور پر دو اشارے پر مبنی ہے:
ڈبل میڈین لائن: 20 ویں اور 60 ویں لائن کا حساب لگائیں ، جب 20 ویں لائن 60 ویں لائن کو عبور کرتی ہے تو ، مارکیٹ کو گہری حالت میں سمجھا جاتا ہے۔ جب 20 ویں لائن 60 ویں لائن کو عبور کرتی ہے تو ، مارکیٹ کو گہری حالت میں سمجھا جاتا ہے۔
ٹرانزیکشن حجم: ہر دن کی ٹرانزیکشن خرید و فروخت کی مقدار کا حساب لگائیں ، اگر خرید و فروخت کی مقدار سے زیادہ اور پچھلے n دن کی اوسط ٹرانزیکشن حجم سے زیادہ ہے تو ، اسے ایک سے زیادہ تجارت سمجھا جاتا ہے۔ اگر فروخت کی مقدار خرید و فروخت سے زیادہ ہے اور پچھلے n دن کی اوسط ٹرانزیکشن حجم سے زیادہ ہے تو ، اسے خالی ٹرانزیکشن سمجھا جاتا ہے۔
اس کے علاوہ ، اس کے ساتھ ساتھ اس کی تجارت کی حکمت عملی اور منطق بھی شامل ہے:
کثیر سر داخلہ: جب اختتامی قیمت 20 ویں لائن پر کھڑی ہوتی ہے ، اور اس دن کی خرید و فروخت کی مقدار اور پچھلے n دن کی اوسط ٹرانزیکشن حجم سے زیادہ ہوتا ہے تو ، یہ سمجھا جاتا ہے کہ مارکیٹ زیادہ حالت میں ہے ، بلین بینڈ کو اتار چڑھاؤ کی شرح کے مطابق حساب کیا جاتا ہے ، اور اگر اختتامی قیمت بلین بینڈ کے وسط اور نچلے ریل کے درمیان ہے تو ، اس میں داخلہ زیادہ ہوتا ہے۔
خالی سر داخلہ: جب اختتامی قیمت نیچے کی طرف گرتی ہے ، اور اس دن کی فروخت کی مقدار خرید کی مقدار اور پچھلے n دن کی اوسط ٹرانزیکشن سے زیادہ ہوتی ہے ، تو یہ سمجھا جاتا ہے کہ مارکیٹ بیئرنگ کی حالت میں ہے ، بلین بینڈ کو اتار چڑھاؤ کی شرح کے مطابق شمار کیا جاتا ہے ، اور اگر اختتامی قیمت بلین بینڈ سے کم ہے تو ، اس میں داخلہ خالی ہے۔
اسٹاپ اور نقصان: معقول اسٹاپ اور نقصان کی حد مقرر کریں ، منافع کو مستحکم کریں یا نقصان کو کم کریں۔ جیسے اسٹاک کی قیمت میں داخلے کی قیمت سے 5 فیصد زیادہ اضافہ ہوا تو اسٹاپ۔ جب نقصان 10 فیصد تک پہنچ گیا تو اسٹاپ۔ یا جب اسٹاک کی قیمت حالیہ اونچائی کے بعد کچھ حد تک پیچھے ہٹ گئی۔
یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:
ڈبل میڈین لائن اور ٹرانزیکشن حجم کے اشارے کے ساتھ مل کر ، کسی ایک تکنیکی اشارے کے فیصلے کے اندھے علاقے سے گریز کیا گیا۔
مختلف پیرامیٹرز کے ساتھ برن بینڈ مخصوص ٹرانزیکشن کی قیمتوں کا تعین کرتا ہے، جس میں داخلہ زیادہ درست ہوتا ہے.
اسٹاپ اور نقصان کی حکمت عملی معقول ہے ، جو منافع کو لاک کرنے اور خطرے کو کنٹرول کرنے میں مددگار ہے۔
پیمائش کا اثر اچھا ہے ، آمدنی مستحکم ہے ، اور یہ مقدار میں تجارت کے لئے عملی طور پر استعمال کیا جاسکتا ہے۔
اس حکمت عملی کے کچھ خطرات بھی ہیں:
ڈبل مساوی لائن حکمت عملی غلطی کے سگنل پیدا کرنے کے لئے آسان ہے، جس میں مشترکہ توانائی کے اشارے کو فلٹر کرنے کی ضرورت ہے.
برن بینڈ پیرامیٹرز کی غلط ترتیب سے داخلے کی کثرت یا کمی پیدا ہوسکتی ہے۔
اسٹریٹجک منافع کو متاثر کرنے کے لئے غیر مناسب طور پر مقرر کردہ فکسڈ اسٹاپ نقصان کی پوزیشن۔
بہت سارے تاریخی اعداد و شمار کی جانچ پڑتال کی ضرورت ہوتی ہے ، اور اس کے نتیجے میں غیر متوقع نقصانات کا سامنا کرنا پڑتا ہے۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:
اوسط لکیری نظام کے پیرامیٹرز کو بہتر بنائیں اور اوسط لکیری کا بہترین مجموعہ تلاش کریں۔
برنڈ پیرامیٹرز کو بہتر بنانے کے لئے داخلہ کو زیادہ درست بنانے کے لئے
مارکیٹ کی صورتحال کے مطابق معقول منافع اور نقصان کا تناسب طے کرنے کے لئے اسٹاپ اسٹاپ نقصان کو متحرک طور پر ایڈجسٹ کریں۔
حکمت عملی کی درستگی کو بہتر بنانے کے لئے دیگر تکنیکی اشارے جیسے MACD ، KD وغیرہ شامل کریں۔
مشین سیکھنے کے طریقوں کا استعمال کرتے ہوئے خود کار طریقے سے بہتر پیرامیٹرز تلاش کریں تاکہ حکمت عملی کو زیادہ موثر بنایا جاسکے۔
یہ حکمت عملی مجموعی طور پر ایک بہت ہی عملی کوانٹم ٹریڈنگ حکمت عملی ہے ، اس کی کارکردگی اچھی طرح سے جانچ پڑتال کی گئی ہے ، اس پر عمل درآمد کرنا آسان ہے ، اس کا خطرہ قابو میں ہے ، یہ ایک مستحکم حکمت عملی ہے جو عملی طور پر استعمال کے لئے موزوں ہے ، اور یہ سیکھنے کے قابل ہے۔ یقینا ، حکمت عملی کو بہتر بنانے کی گنجائش اب بھی بہت زیادہ ہے ، اور امید ہے کہ مزید کوانٹم ٹریڈنگ ماہرین اس میں بہتری لائیں گے۔
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 1m
basePeriod: 1m
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
strategy("prototype",initial_capital=0.01,commission_type=strategy.commission.percent,commission_value=0.1, format=format.volume, precision=0,overlay=true)
// SETTING //
length1=input(1)
length3=input(3)
length7=input(7)
length14=input(14)
length20=input(20)
length60=input(60)
length120=input(120)
ma1= sma(close,length1)
ma3= sma(close,length3)
ma7= sma(close,length7)
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")
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
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=(close>Supper and BV>SV and BV>Davgvol)
bull2=(close>ma20 and BV>SV and BV>Davgvol)
bux =(close<Supper and close>Slower and volume<Wavgvol)
bear=(close<Slower and close<lower and SV>BV and SV>Wavgvol)
hi=highest(exit,10)
imInATrade = strategy.position_size != 0
highestPriceAfterEntry = valuewhen(imInATrade, high, 0)
// STRATEGY LONG //
if (bull and close>ma3 and ma20>ma60 and rsi<70)
strategy.entry("Long",strategy.long,0.1)
if (strategy.position_avg_price*1.05<close)
strategy.close("Long",0.1)
else if (highestPriceAfterEntry*0.999<close and close>strategy.position_avg_price*1.002)
strategy.close("Long",0.1)
else if (highestPriceAfterEntry*0.997<close and close>strategy.position_avg_price*1.002)
strategy.close("Long",0.1)
else if (highestPriceAfterEntry*0.995<close and close>strategy.position_avg_price*1.002)
strategy.close("Long",0.1)
else if (strategy.openprofit < strategy.position_avg_price*0.9-close)
strategy.close("Long",0.1)
//////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////