
इस रणनीति का नाम Price Volume Trend Strategy है, जो इस रणनीति का उपयोग मूल्य परिवर्तन और लेन-देन की मात्रा में परिवर्तन के बारे में निर्णय लेने के विचार को दर्शाता है।
यह रणनीति पहले कीमतों की गतिशीलता की गणना करती है। वर्तमान चक्र की कीमतों की तुलना में पिछले चक्र की कीमतों के अंतर की गणना करके, यह नवीनतम चक्र के भीतर कीमतों के निरपेक्ष परिवर्तन को दर्शाता है। सकारात्मक मूल्य मूल्य में वृद्धि का प्रतिनिधित्व करता है, नकारात्मक मूल्य मूल्य में गिरावट का प्रतिनिधित्व करता है। फिर इस अंतर का चलती औसत की गणना करें, इसे हलचल के साथ संसाधित करें, और औसत गतिशीलता प्राप्त करें।
जब नवीनतम मूल्य औसत गति से अधिक होता है, तो यह संकेत देता है कि कीमत बढ़ रही है; जब नवीनतम मूल्य औसत गति से कम होता है, तो यह संकेत देता है कि कीमत गिर रही है। इस सूचक के आधार पर कीमत की प्रवृत्ति की दिशा का आकलन करें। संश्लेषित लेनदेन की मात्रा को बढ़ाने वाले फ़िल्टर को मिलाकर, वास्तविक लेनदेन में केवल लेनदेन की मात्रा वाले संकेतों का चयन करें।
मूल्य वृद्धि और गिरावट की प्रवृत्ति के आधार पर, खरीद और बिक्री के लिए उचित कार्रवाई करें।
यह रणनीति ओवरऑल गतिशीलता के संकेतकों के माध्यम से कीमतों में अल्पकालिक परिवर्तन के रुझानों को ट्रैक करती है, खरीदने और बेचने के समय को जल्दी से निर्धारित करती है। लाभ यह है कि यह तेजी से संचालित होता है, गिरावट को रोकता है; नुकसान सिग्नल की गुणवत्ता और दीर्घकालिक लाभप्रदता पर विचार करना है। पैरामीटर समायोजन, वायु नियंत्रण तंत्र को बढ़ाने के माध्यम से, यह रणनीति उच्च आवृत्ति रणनीति का एक महत्वपूर्ण हिस्सा हो सकती है, अन्य निम्न आवृत्ति रणनीतियों के साथ संयोजन में उपयोग की जाती है।
/*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())