
اس حکمت عملی کا نام قیمت حجم رجحان حکمت عملی ہے ، جو حکمت عملی کا استعمال کرتے ہوئے قیمتوں میں تبدیلی اور لین دین کی مقدار میں تبدیلی کے رجحانات کا اندازہ لگانے کی سوچ کی عکاسی کرتا ہے۔
یہ حکمت عملی سب سے پہلے قیمت کی حرکیات کا حساب لگاتی ہے۔ موجودہ دورانیہ کی قیمت کو پچھلے دورانیہ کی قیمت کے مقابلے میں فرق کی گنتی کرکے ، قیمت میں حالیہ دورانیے میں ہونے والے مطلق تبدیلی کی عکاسی کی جاسکتی ہے۔ مثبت قیمت میں اضافے کی نشاندہی کرتا ہے ، منفی قیمت قیمت میں کمی کی نشاندہی کرتی ہے۔ اس کے بعد اس فرق کی حرکت پذیری اوسط کا حساب لگایا جاتا ہے ، جس میں ہلچل کا علاج کیا جاتا ہے ، جس سے اوسط حرکیات کا اشارے ملتا ہے۔
جب تازہ ترین قیمت اوسط حرکیات سے زیادہ ہو تو ، اس کا مطلب یہ ہے کہ قیمت بڑھ رہی ہے۔ جب تازہ ترین قیمت اوسط حرکیات سے کم ہو تو ، اس کا مطلب یہ ہے کہ قیمت گر رہی ہے۔ اس اشارے کے مطابق قیمت کے رجحان کی سمت کا تعین کریں۔ مشترکہ حجم میں اضافہ کرنے والا فلٹر ، اصل تجارت میں صرف زیادہ حجم والے سگنل کا انتخاب کریں۔
قیمتوں میں اضافے اور کمی کے رجحانات کے مطابق ، خرید و فروخت کے آپریشن انجام دیں۔
یہ حکمت عملی مجموعی طور پر متحرک اشارے کے ذریعہ قیمتوں میں قلیل مدتی تبدیلی کے رجحانات کا سراغ لگاتی ہے ، خریدنے اور بیچنے کے وقت کو تیزی سے فیصلہ کرتی ہے۔ اس کی خوبی یہ ہے کہ یہ تیزی سے کام کرتا ہے ، گرنے کو روکتا ہے۔ اس کی خرابی یہ ہے کہ سگنل کے معیار اور طویل مدتی منافع بخش صلاحیت پر غور کیا جانا چاہئے۔ پیرامیٹرز کو ایڈجسٹ کرنے اور ہوا کے کنٹرول کے طریقہ کار کو بڑھانے کے ذریعہ ، یہ حکمت عملی ہائی فریکوئینسی حکمت عملی کا ایک اہم حصہ بن سکتی ہے ، جو دیگر کم فریکوئینسی حکمت عملی کے ساتھ مل کر استعمال کی جاسکتی ہے۔
/*backtest
start: 2022-12-18 00:00:00
end: 2023-12-24 00:00:00
period: 1d
basePeriod: 1h
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/
// © russtic
//@version=2
strategy("HA smoothed eliminator v2 ",pyramiding=1, slippage=10, default_qty_type=strategy.percent_of_equity,
commission_type=strategy.commission.percent, commission_value=0.075, overlay=true,
default_qty_value=100, initial_capital=1000)
FromMonth1 = input(defval=1, title="From Month", minval=1, maxval=12)
FromDay1 = input(defval=1, title="From Day", minval=1, maxval=31)
FromYear1 = input(defval=2019, title="From Year", minval=2010)
ToMonth1 = input(defval=12, title="To Month", minval=1, maxval=12)
ToDay1 = input(defval=31, title="To Day", minval=1, maxval=31)
ToYear1 = input(defval=2020, title="To Year", minval=2010)
start1 = timestamp(FromYear1, FromMonth1, FromDay1, 00, 00)
finish1 = timestamp(ToYear1, ToMonth1, ToDay1, 23, 59)
window1() => true
t1 = time(timeframe.period, "0300-1200")
t2 = time(timeframe.period, "0930-1700")
London = na(t1) ? na : green
NY = na(t2) ? na : red
bgcolor(London, title="London")
bgcolor(NY, title="New York")
///////////////////////////
// HA smoothed
len=(1 )
o=ema(open,len)
c=ema(close,len)
h=ema(high,len)
l=ema(low,len)
haclose = (o+h+l+c)/4
haopen = na(haopen[1]) ? (o + c)/2 : (haopen[1] + haclose[1]) / 2
hahigh = max (h, max(haopen,haclose))
halow = min (l, min(haopen,haclose))
len2=(len)
o2=ema(haopen, len2)
c2=ema(haclose, len2)
h2=ema(hahigh, len2)
l2=ema(halow, len2)
buy= (o2<c2)
closebuy= (o2>c2)
sell= (o2>c2)
closesell= (o2<c2)
//
/// END NEW SCRIPT
//
//
// MERGE SCRIPTS
a1= o2<c2
b1=o2>c2
is_uptrend = (a1)// and (p> 0)
is_downtrend = (b1)// and (p <0)
barcolor(b1 ? red: a1 ? lime : blue)
//end
// =========================start PVT -GIVES EACH BAR A VALUE
facton = (true)//, title="arrow elimination (factor) on ")
Length1 = 2//input(2, title="PVT Length", minval=1)
xPrice = close//input(title="Source", type=source, defval=close)
xsma = wma(xPrice, Length1)
nRes = xPrice - xsma
pos = iff(nRes > 0, 1,
iff(nRes < 0, -1, nz(pos[1], 0)))
forex= input(true, title = 'strength toggle ')
forexyes = (forex == true)? 10000 : (forex == false)? 1: na
plot(nRes*forexyes , color=aqua, title="strength", transp=100)
// ========================= end pvt
//
//============================= start factor // ELIMINATES weak signals
// start trend
//
factor = input(600.00, title = "strength elimination")
factor1 = factor - (factor*2)//input(-100.00, title = "sell strength elimination ")
facton1 = (facton == true) and is_uptrend == 1 and nRes*forexyes>factor ? 1 : (facton == true) and is_downtrend == 1 and nRes*forexyes<factor1 ? -1 : (facton == false)
// ==================== =====
//
//=========================== end factor
nRestrend = (nRes*forexyes)
//=========================== plot arrows
plot1 = iff(is_uptrend[1] == 1, 0 , 1)
plot2 = iff(is_downtrend[1] == 1, 0 , 1)
uparrowcond = is_downtrend ? false : nz(uparrowcond[1], false) == true ? uparrowcond[1] : (facton1 and is_uptrend and nRes*forexyes>factor)
downarrowcond = is_uptrend ? false : nz(downarrowcond[1], false) == true ? downarrowcond[1] : (facton1 and is_downtrend and nRes*forexyes<factor1)
//prevarrowstate = uparrowcond ? 1 : downarrowcond ? -1 : nz(prevarrowstate[1], 0)
candledir = (open < close)? 1: (open>close)? -1 : na // ONLY OPENS ON SAME BAR DIRECTION AS SIGNAL
up=nz(uparrowcond[1], false) == false and ( is_uptrend and nRes*forexyes>factor) and candledir ? 1:na
dn=nz(downarrowcond[1], false) == false and ( is_downtrend and nRes*forexyes<factor1) and candledir? -1:na
sig=0
if up==1
sig:=1
else
if dn==-1
sig:=-1
else
sig:=sig[1]
plotarrow(sig[1]!=1 and sig==1?1:na, title="BUY ARROW", colorup=lime, maxheight=80, minheight=50, transp=0)// up arrow
plotarrow(sig[1]!=-1 and sig==-1?-1:na, title="SELL ARROW", colordown=red, maxheight=80, minheight=50, transp=0)// down arrow
//========================= alert condition
alertcondition(sig[1]!=1 and sig==1?1:na, title="BUY eliminator", message="BUY " )
alertcondition(sig[1]!=-1 and sig==-1?-1:na, title="SELL eliminator", message="SELL ")
strategy.entry("B", true, when=(sig[1]!=1 and sig==1?1:na) and window1())
strategy.entry("S", false,when=(sig[1]!=-1 and sig==-1?-1:na) and window1())