ADR Average type

TonXas

TonXas

New member
VIP
How do I incorporate the average type function into my averages? I tried changing def HSMA2 = average(dayHigh[-displace], length2); to def HSMA2 = averagetype(dayHigh[-displace], length2); and that didnt work.

Code:
input aggregationPeriod = AggregationPeriod.Four_hours;
def len = 2;
input length2 = 2;
input length5 = 5;
input length10 = 10;
input displace = 0;
input averagetype = {default Wilders, EMA, sma, Hull};
def dayHigh = DailyHighLow(aggregationPeriod, len, 0, no).dailyhigh;
def dayLow = DailyHighLow(aggregationPeriod, len, 0, no).DailyLow;
def Dayopen = open(period = aggregationPeriod);
def na = Double.NaN;
def HSMA2 = average(dayHigh[-displace], length2);
def LSMA2 = Average(dayLow[-displace], length2);
def ADR2 = (HSMA2[1] - LSMA2[1]);
def HSMA5 = Average(dayHigh[-displace], length5);
def LSMA5 = Average(dayLow[-displace], length5);
def ADR5 = (HSMA5[1] - LSMA5[1]);
def HSMA10 = Average(dayHigh[-displace], length10);
def LSMA10 = Average(dayLow[-displace], length10);
def ADR10 = (HSMA10[1] - LSMA10[1]);


plot adr_sma_H2 =  Dayopen + ADR2 / 2;
plot adr_sma_L2 =  Dayopen - ADR2 / 2;
plot adr_sma_H5 =  Dayopen + ADR5 / 2;
plot adr_sma_L5 =  Dayopen - ADR5 / 2;

plot adr_sma_H10 =  Dayopen + ADR10 / 2;
plot adr_sma_L10 =  Dayopen - ADR10 / 2;
 
Last edited by a moderator:
rad14733

rad14733

Active member
VIP
AverageType is a Constant, not a Function... 💡In addition, Average() does not accept AverageType as it is a simple average only...

Edited to add: If you want to implement AverageType you should use MovingAverage()...
 
Last edited:

Similar threads

Top