price movement range indicator

esvafromdc

New member
I am attempting to create an hourly upper indicator similar to the "volatility box". I used BenTen's "Average Price Movements" as a guide (I'm not a programmer).

In this case, I am looking back each hour for 60 hourly periods, taking an average of the range and the high of each period and then projecting them. I feel like my calculations are correct but it clearly isn't displaying correctly. What it should do is find the low for the current 60-minute candle and add the average and upper price movement number to project the high. Conversely, it should find the high for the current 60-minute candle, and subtract the average and the upper price movement range for that hour to project the low. If anyone has any insight into this it would be greatly appreciated! Thank you in advance. Sorry I don't see where to insert an image without referencing a website. I have screenshots of this.

Code is as follows:

Code:
# HPMR 60-Period look-back

input aggregationPeriod = AggregationPeriod.HOUR;
def hourhigh = high(period = aggregationPeriod);
def hourlow = low(period = aggregationPeriod);
def houropen = open(period = aggregationPeriod);
def range = (hourhigh - hourlow);

# Median number of the range

def t1 = range[23]/2;
def t2 = range[46]/2;
def t3 = range[69]/2;
def t4 = range[92]/2;
def t5 = range[115]/2;
def t6 = range[138]/2;
def t7 = range[161]/2;
def t8 = range[184]/2;
def t9 = range[207]/2;
def t10 = range[230]/2;
def t11 = range[253]/2;
def t12 = range[276]/2;
def t13 = range[299]/2;
def t14 = range[322]/2;
def t15 = range[345]/2;
def t16 = range[368]/2;
def t17 = range[391]/2;
def t18 = range[414]/2;
def t19 = range[437]/2;
def t20 = range[460]/2;
def t21 = range[483]/2;
def t22 = range[506]/2;
def t23 = range[529]/2;
def t24 = range[552]/2;
def t25 = range[575]/2;
def t26 = range[598]/2;
def t27 = range[621]/2;
def t28 = range[644]/2;
def t29 = range[667]/2;
def t30 = range[690]/2;
def t31 = range[713]/2;
def t32 = range[736]/2;
def t33 = range[759]/2;
def t34 = range[782]/2;
def t35 = range[805]/2;
def t36 = range[828]/2;
def t37 = range[851]/2;
def t38 = range[874]/2;
def t39 = range[897]/2;
def t40 = range[920]/2;
def t41 = range[943]/2;
def t42 = range[966]/2;
def t43 = range[989]/2;
def t44 = range[1002]/2;
def t45 = range[1035]/2;
def t46 = range[1058]/2;
def t47 = range[1081]/2;
def t48 = range[1104]/2;
def t49 = range[1127]/2;
def t50 = range[1150]/2;
def t51 = range[1173]/2;
def t52 = range[1196]/2;
def t53 = range[1219]/2;
def t54 = range[1242]/2;
def t55 = range[1265]/2;
def t56 = range[1288]/2;
def t57 = range[1311]/2;
def t58 = range[1334]/2;
def t59 = range[1357]/2;
def t60 = range[1380]/2;

# Highs each period

def s1 = t1 * 2;
def s2 = t2 * 2;
def s3 = t3 * 2;
def s4 = t4 * 2;
def s5 = t5 * 2;
def s6 = t6 * 2;
def s7 = t7 * 2;
def s8 = t8 * 2;
def s9 = t9 * 2;
def s10 = t10 * 2;
def s11 = t11 * 2;
def s12 = t12 * 2;
def s13 = t13 * 2;
def s14 = t14 * 2;
def s15 = t15 * 2;
def s16 = t16 * 2;
def s17 = t17 * 2;
def s18 = t18 * 2;
def s19 = t19 * 2;
def s20 = t20 * 2;
def s21 = t21 * 2;
def s22 = t22 * 2;
def s23 = t23 * 2;
def s24 = t24 * 2;
def s25 = t25 * 2;
def s26 = t26 * 2;
def s27 = t27 * 2;
def s28 = t28 * 2;
def s29 = t29 * 2;
def s30 = t30 * 2;
def s31 = t31 * 2;
def s32 = t32 * 2;
def s33 = t33 * 2;
def s34 = t34 * 2;
def s35 = t35 * 2;
def s36 = t36 * 2;
def s37 = t37 * 2;
def s38 = t38 * 2;
def s39 = t39 * 2;
def s40 = t40 * 2;
def s41 = t41 * 2;
def s42 = t42 * 2;
def s43 = t43 * 2;
def s44 = t44 * 2;
def s45 = t45 * 2;
def s46 = t46 * 2;
def s47 = t47 * 2;
def s48 = t48 * 2;
def s49 = t49 * 2;
def s50 = t50 * 2;
def s51 = t51 * 2;
def s52 = t52 * 2;
def s53 = t53 * 2;
def s54 = t54 * 2;
def s55 = t55 * 2;
def s56 = t56 * 2;
def s57 = t57 * 2;
def s58 = t58 * 2;
def s59 = t59 * 2;
def s60 = t60 * 2;


def hpmr_avg = (t1 + t2 + t3 + t4 + t5 + t6 + t7 + t8 + t9 + t10 + t11 + t12 + t13 + t14 + t15 + t16 + t17 + t18 + t19 + t20 + t21 + t22 + t23 + t24 + t25 + t26 + t27 + t28 + t29 + t30 + t31 + t32 + t33 + t34 + t35 + t36 + t37 + t38 + t39 + t40 + t41 + t42 + t43 + t44 + t45 + t46 + t47 + t48 + t49 + t50 + t51 + t52 + t53 + t54 + t55 + t56 + t57 + t58 + t59 + t60) / 60;
def hpmr_high = (s1 + s2 + s3 + s4 + s5 + s6 + s7 + s8 + s9 + s10 + s11 + s12 + s13 + s14 + s15 + s16 + s17 + s18 + s19 + s20 + s21 + s22 + s23 + s24 + s25 + s26 + s27 + s28 + s29 + s30 + s31 + s32 + s33 + s34 + s35 + s36 + s37 + s38 + s39 + s40 + s41 + s42 + s43 + s44 + s45 + s46 + s47 + s48 + s49 + s50 + s51 + s52 + s53 + s54 + s55 + s56 + s57 + s58 + s59 + s60) / 60;

def uppertopline = (hourlow + hpmr_high);
def upperlowerline = (hourlow + hpmr_avg);
def lowertopline = (hourhigh - hpmr_high);
def lowerlowerline = (hourhigh - hpmr_avg);

plot upperhigh = uppertopline;
plot upperlow = upperlowerline;
plot lowerhigh = lowertopline;
plot lowerlow = lowerlowerline;

addCloud(upperhigh, upperlow, color.RED, color.RED);
addCloud(lowerhigh, lowerlow, color.GREEN, color.GREEN);

upperhigh.SetDefaultColor(Color.red);
upperlow.SetDefaultColor(Color.red);
lowerhigh.SetDefaultColor(Color.green);
lowerlow.SetDefaultColor(Color.green);
 
Solution
I am attempting to create an hourly upper indicator similar to the "volatility box". I used BenTen's "Average Price Movements" as a guide (I'm not a programmer).

In this case, I am looking back each hour for 60 hourly periods, taking an average of the range and the high of each period and then projecting them. I feel like my calculations are correct but it clearly isn't displaying correctly. What it should do is find the low for the current 60-minute candle and add the average and upper price movement number to project the high. Conversely, it should find the high for the current 60-minute candle, and subtract the average and the upper price movement range for that hour to project the low. If anyone has any insight into this...
you don't project , you use TOS code to get the number. she previously said that it is based on 5 days data . so here is my code for DPMR (
daily price movement range not hourly , if you can program, can you change to aggregation period to "hour " and expend to 60 hours ?

def len = 2;

def dayHigh = DailyHighLow(AggregationPeriod.DAY, len, 0, no).dailyhigh;
def dayLow = DailyHighLow(AggregationPeriod.DAY, len, 0, no).DailyLow;

def ADR_high = (dayHigh + dayHigh[1] + dayHigh[2] + dayHigh[3] + dayHigh[4]) / 5;
def ADR_low = (dayLow + dayLow[1] + dayLow[2] + dayLow[3] + dayLow[4]) / 5;

plot ADR_H = ADR_high;
plot ADR_L = ADR_low;
def Avedayrange=ADR_H-ADR_L;
def FiveDayHigh = Highest(high(period = AggregationPeriod.DAY), 5);
def FiveDayLow = Lowest(low(period = AggregationPeriod.DAY), 5);
plot DR_H = FiveDayHigh;
plot DR_L = FiveDayLow;
def dayrange =FiveDayHigh-FiveDayLow;
addCloud(ADR_H, DR_H, color.red, color.red);
addCloud(ADR_L, DR_L, color.GREEN, color.light_GREEN);

addLabel ( yes, "ADPR " + round( Avedayrange,1) , color.GREEN);
addLabel ( yes, "DPR " + round (dayrange,1) , color.light_GREEN);
 
you don't project , you use TOS code to get the number. she previously said that it is based on 5 days data . so here is my code for DPMR (
daily price movement range not hourly , if you can program, can you change to aggregation period to "hour " and expend to 60 hours ?

def len = 2;

def dayHigh = DailyHighLow(AggregationPeriod.DAY, len, 0, no).dailyhigh;
def dayLow = DailyHighLow(AggregationPeriod.DAY, len, 0, no).DailyLow;

def ADR_high = (dayHigh + dayHigh[1] + dayHigh[2] + dayHigh[3] + dayHigh[4]) / 5;
def ADR_low = (dayLow + dayLow[1] + dayLow[2] + dayLow[3] + dayLow[4]) / 5;

plot ADR_H = ADR_high;
plot ADR_L = ADR_low;
def Avedayrange=ADR_H-ADR_L;
def FiveDayHigh = Highest(high(period = AggregationPeriod.DAY), 5);
def FiveDayLow = Lowest(low(period = AggregationPeriod.DAY), 5);
plot DR_H = FiveDayHigh;
plot DR_L = FiveDayLow;
def dayrange =FiveDayHigh-FiveDayLow;
addCloud(ADR_H, DR_H, color.red, color.red);
addCloud(ADR_L, DR_L, color.GREEN, color.light_GREEN);

addLabel ( yes, "ADPR " + round( Avedayrange,1) , color.GREEN);
addLabel ( yes, "DPR " + round (dayrange,1) , color.light_GREEN);
I tried to add the hourly high over 60 periods for each hour, and hourly low over 60 periods for the same hour to do what ADR_high and ADR_low are doing in your code, but it looks even worse now. I'm just not understanding the formula for the hourly price movement. I thought it was getting the range for each hour based on historical ranges (9am today, thursday, wednesday, etc... on back 60 days) and adding each range average to the appropriate current hour. That would make sense, but apparently not. Here's what I tried to do to turn your DPMR to HPMR:

# avg_rng_60values_01

# simplify 60 formulas
# read bars , 23 bars apart

input agg = AggregationPeriod.HOUR;
def hourhigh = high(period = agg);
def hourlow = low(period = agg);
def r = (hourhigh - hourlow);

# Get range for each hour over the last 60 days

input bars_back = 60;
input step = 23;
def x = fold i = 1 to bars_back+1
with p
do p + getvalue(r, ( i * step) );

def s = x / bars_back;
def t = s / 2;

# def hpmr_avg = (t1 + t2
# def hpmr_high = (s1 + s2 + s3
def hpmr_avg = t;
def hpmr_range = s;


# Get high for each hour over the last 60 days

input bars_back_high = 60;
input step_high = 23;
def xhigh = fold i2 = 1 to bars_back+1
with p2
do p2 + getvalue(hourhigh, ( i2 * step) );

def s_high = x / bars_back;
def hpmr_high_price = s_high;


# Get low for each hour over the last 60 days

input bars_back_low = 60;
input step_low = 23;
def xlow = fold i3 = 1 to bars_back+1
with p3
do p3 + getvalue(hourlow, ( i3 * step) );

def s_low = x / bars_back;
def hpmr_low_price = s;


plot HPMR_H = hpmr_high_price;
plot HPMR_L = hpmr_low_price;

def uppertopline = (hourlow + hpmr_range);
def lowertopline = (hourhigh - hpmr_range);

plot upperhigh = uppertopline;
plot lowerhigh = lowertopline;

addCloud(upperhigh, HPMR_H, color.RED, color.RED);
addCloud(lowerhigh, HPMR_L, color.GREEN, color.GREEN);

#upperhigh.SetDefaultColor(Color.red);
#upperlow.SetDefaultColor(Color.red);
#lowerhigh.SetDefaultColor(Color.green);
#lowerlow.SetDefaultColor(Color.green);

upperhigh.SetDefaultColor(Color.magenta);
upperlow.SetDefaultColor(Color.magenta);
lowerhigh.SetDefaultColor(Color.cyan);
lowerlow.SetDefaultColor(Color.cyan);

upperhigh.SetStyle(Curve.MEDIUM_DASH);
upperlow.SetStyle(Curve.MEDIUM_DASH);
lowerhigh.SetStyle(Curve.MEDIUM_DASH);
lowerlow.SetStyle(Curve.MEDIUM_DASH);
 
The definition you claimed hour high and low is exactly what I thought should be ( let's said 60 day ( 12 trading weeks ) need to code highest of each Monday 9 am and lowest each Monday 9am for the past 12 weeks to get the 9-10 am range. and average these 12 data to get average Monday 9 -10 average range and so on for rest 6 hrs for Monday and repeat same process for Tuesday until Friday but I Just don't know how to code this
 
The definition you claimed hour high and low is exactly what I thought should be ( let's said 60 day ( 12 trading weeks ) need to code highest of each Monday 9 am and lowest each Monday 9am for the past 12 weeks to get the 9-10 am range. and average these 12 data to get average Monday 9 -10 average range and so on for rest 6 hrs for Monday and repeat same process for Tuesday until Friday but I Just don't know how to code this
That's not quite what I did. I am using every hour of the day except 5pm - 6pm EST (I am using it for futures trading), hence the factor of 23 in the look back). So for instance, it gets the high, low, range and midpoint between the high and low for 9am every day for the last 60 trading days and takes and average of the ranges and midpoints. It's not just grabbing all the Mondays at 9am, but all the 9ams, for the last 60 days.
 
Ok 60 hrs these are 10 trading days , should not code get 60 hr high , rather get 9-10 am high , low. ----- get 3-4 pm high. low for the Monday and repeat the same process for Tuesday until Friday then get average 9-10 am data -------3-4 pm data

if you look the Rahgee June 30 2022 " charts and coffee " there is clip she showed her all indicators in her chart : there are three HPMRs one for ETF , one for future, and one for stock

Can you help me for the stock hourly code just for Monday from 9 am to 4 pm EST and looking back period is 5 ( 5 weeks ) ? thanks

Can you try your code then +" weekly price move range" ( WPMR ) then * 0.68 as aggressive version; * 1 as "moderated version" and * 1.27 as
conservative version ?

can you use my code and change aggregation period to" week " and get WPMR and add WPMR to your current code
THEN on your output code:

def uppertopline1 = ( WPMR + hpmr_range)*0.68 ;
def lowertopline 1= ( WPMR - hpmr_range) *0.68 ;

def uppertopline2 = ( WPMR + hpmr_range)*1 ;
def lowertopline 2 = ( WPMR - hpmr_range) *1 ;

def uppertopline3 = ( WPMR + hpmr_range)*1.27 ;
def lowertopline 3= ( WPMR - hpmr_range) *1.27;
 
use caution when using either the code provided here from @esvafromdc or @halcyonguy as both implementations assume a consistent number of bars in a day which is not true on holiday half days of trading in futures or stocks for example. The actual times of the bars are not verified and thus the codes do not calculate the correct hourly range average over the chart.
 
use caution when using either the code provided here from @esvafromdc or @halcyonguy as both implementations assume a consistent number of bars in a day which is not true on holiday half days of trading in futures or stocks for example. The actual times of the bars are not verified and thus the codes do not calculate the correct hourly range average over the chart.


Could a specific time be defined for gathering the data? For example, I use a conditional code to define the market open hours so I don't get scanner notifications outside market hours. Wondering if a specific piece of code could define each "hour" of the day to get the data.

This is what I currently use to define specific times throughout the day.

input OpenTime = 850;
input DurationMinutes = 430;
def durationSec = DurationMinutes * 60;
def secondsPassed = SecondsFromTime(OpenTime);
def within = if secondsPassed >= 0 and secondsPassed <= durationSec then 1 else Double.NaN;

plot Time = within;
 
I believe the data is actually downloaded from AutoChartist and then the indicator is updated with the most recent values based on the AutoChartist volatility analysis for each symbol that is listed in each seperate indicator (stock, future, etc). According to AutoChartist, the data represents one standard deviation, hence the .68 value. Just my 2 cents, not sure if it's correct but that's my understanding.
 
I believe the data is actually downloaded from AutoChartist and then the indicator is updated with the most recent values based on the AutoChartist volatility analysis for each symbol that is listed in each seperate indicator (stock, future, etc). According to AutoChartist, the data represents one standard deviation, hence the .68 value. Just my 2 cents, not sure if it's correct but that's my understanding.
That is correct. I have been using a version that was simplified by Halcyonguy, only I've been using it for limited periods of 8-12 day look backs to avoid holidays screwing up the look back periods. It's actually working very well. It's certainly providing as many entry opportunities in choppy markets as I've seen with the similar volatility box indicator from TOS and Raghee Horner's HPMR. I would attach a picture of it to show some examples, but don't know how to attach a jpg. The image attachment button here wants a web address.

It does rewrite, but so does TOS' and Raghee Horner's HPMR indicator. It also BARELY rewrites, meaning that when either the half hour or hour open (depending on how it's set - I use both) they barely move from their initial opening positions. If they do move significantly. you wouldn't used them anyway because price is running away and they are no longer relevant. But it's astonishing how accurate they've been for me the past two weeks. When they correspond with any other significant support or resistance such as value area high/low of volume profile, pivot levels, VWAP, or 200 EMA, they're a slam dunk.

For one hour, the "step" is 23. for half hour, it gets changed to 46. The look back period for both is changed from 60 to between 8 and 12, again, to stay away from holidays that would disrupt the pattern. I actually think they seem more accurate between those number of days compared to looking far back. I'm using them entirely on /ES futures and as I said, it's worked surprisingly well, mainly during periods of consolidation or in an overall tighter, choppy market (which we've recently had a few days of).

This is the code I'm using for it, and thanks again to Halcyonguy for simplifying it:

# HPMR 60-Period look-back

input aggregationPeriod = AggregationPeriod.HOUR;
def hourhigh = high(period = aggregationPeriod);
def hourlow = low(period = aggregationPeriod);
def houropen = open(period = aggregationPeriod);
def range = (hourhigh - hourlow);

# Get range for each hour over the last 60 days

input bars_back = 60;
input step = 23;
def x = fold i = 1 to bars_back+1
with p
do p + getvalue(range, ( i * step) );

def s = x / bars_back;
def t = s / 2;

def hpmr_avg = t;
def hpmr_range = s;

def uppertopline = (hourlow + hpmr_range);
def upperlowerline = uppertopline + 2;
def lowerlowerline = (hourhigh - hpmr_range);
def lowertopline = lowerlowerline - 2;

plot upperhigh = uppertopline;
plot upperlow = upperlowerline;
plot lowerhigh = lowertopline;
plot lowerlow = lowerlowerline;

addCloud(upperhigh, upperlow, color.CYAN, color.CYAN);
addCloud(lowerhigh, lowerlow, color.ORANGE, color.ORANGE);
 
That is correct. I have been using a version that was simplified by Halcyonguy, only I've been using it for limited periods of 8-12 day look backs to avoid holidays screwing up the look back periods. It's actually working very well. It's certainly providing as many entry opportunities in choppy markets as I've seen with the similar volatility box indicator from TOS and Raghee Horner's HPMR. I would attach a picture of it to show some examples, but don't know how to attach a jpg. The image attachment button here wants a web address.
I'm trying to see these on a 5-min chart, as Raghee does it (and Volatility Box) the zones are calculated as hourly bands, but show up on lower time frame charts-- I only see them on an hourly chart, which isn't that useful.

Is there a setting or code mod to allow referencing the higher time frame on a lower time frame chart? It may be that the manually importing of levels from autochartist is needed, but I'm hoping not.
 
That is correct. I have been using a version that was simplified by Halcyonguy, only I've been using it for limited periods of 8-12 day look backs to avoid holidays screwing up the look back periods. It's actually working very well. It's certainly providing as many entry opportunities in choppy markets as I've seen with the similar volatility box indicator from TOS and Raghee Horner's HPMR. I would attach a picture of it to show some examples, but don't know how to attach a jpg. The image attachment button here wants a web address.

It does rewrite, but so does TOS' and Raghee Horner's HPMR indicator. It also BARELY rewrites, meaning that when either the half hour or hour open (depending on how it's set - I use both) they barely move from their initial opening positions. If they do move significantly. you wouldn't used them anyway because price is running away and they are no longer relevant. But it's astonishing how accurate they've been for me the past two weeks. When they correspond with any other significant support or resistance such as value area high/low of volume profile, pivot levels, VWAP, or 200 EMA, they're a slam dunk.

For one hour, the "step" is 23. for half hour, it gets changed to 46. The look back period for both is changed from 60 to between 8 and 12, again, to stay away from holidays that would disrupt the pattern. I actually think they seem more accurate between those number of days compared to looking far back. I'm using them entirely on /ES futures and as I said, it's worked surprisingly well, mainly during periods of consolidation or in an overall tighter, choppy market (which we've recently had a few days of).

This is the code I'm using for it, and thanks again to Halcyonguy for simplifying it:

# HPMR 60-Period look-back

input aggregationPeriod = AggregationPeriod.HOUR;
def hourhigh = high(period = aggregationPeriod);
def hourlow = low(period = aggregationPeriod);
def houropen = open(period = aggregationPeriod);
def range = (hourhigh - hourlow);

# Get range for each hour over the last 60 days

input bars_back = 60;
input step = 23;
def x = fold i = 1 to bars_back+1
with p
do p + getvalue(range, ( i * step) );

def s = x / bars_back;
def t = s / 2;

def hpmr_avg = t;
def hpmr_range = s;

def uppertopline = (hourlow + hpmr_range);
def upperlowerline = uppertopline + 2;
def lowerlowerline = (hourhigh - hpmr_range);
def lowertopline = lowerlowerline - 2;

plot upperhigh = uppertopline;
plot upperlow = upperlowerline;
plot lowerhigh = lowertopline;
plot lowerlow = lowerlowerline;

addCloud(upperhigh, upperlow, color.CYAN, color.CYAN);
addCloud(lowerhigh, lowerlow, color.ORANGE, color.ORANGE);
I added FIB levels to the average price movement indicator. Looks interesting when you combine it with yours. But your indicator has repainted quite a bit when I tested on the short timeframes. http://tos.mx/VpThqyK
 
Last edited:

So I updated my Raghee HPMR's and adjusted your HPMR's with the settings below. This is as close as I could get it to match on a 5min chart. It's obvious that hers are more dynamic with the uppertopline and lowerlowerline I'm assuming.

Is your HMPR only good for /ES? Cause these settings don't match Raghee's on other futures. In her code they are all separated out. Other HPMR's like TOS Indicators and Raghee updated theirs like once a month or so, based off what idk. So will we have to do the same? Or is it possible to make an HPMR for every stock/futures without having to input separate symbols?

Thanks all!

# HPMR 60-Period look-back

input aggregationPeriod = AggregationPeriod.HOUR;
def hourhigh = high(period = aggregationPeriod);
def hourlow = low(period = aggregationPeriod);
def houropen = open(period = aggregationPeriod);
def range = (hourhigh - hourlow);

# Get range for each hour over the last 60 days

input bars_back = 65;
input step = 23;
def x = fold i = 1 to bars_back+1
with p
do p + getvalue(range, ( i * step) );

def s = x / bars_back;
def t = s / 10;

def hpmr_avg = t;
def hpmr_range = s;

def uppertopline = (hourlow + hpmr_range);
def upperlowerline = uppertopline + 12;
def lowerlowerline = (hourhigh - hpmr_range);
def lowertopline = lowerlowerline - 12;

plot upperhigh = uppertopline;
plot upperlow = upperlowerline;
plot lowerhigh = lowertopline;
plot lowerlow = lowerlowerline;

addCloud(upperhigh, upperlow, color.CYAN, color.CYAN);
addCloud(lowerhigh, lowerlow, color.ORANGE, color.ORANGE);
 
If I manually define hourly highs for each hour and enter the values for them such as h1high = 5, h2high = 10, h3high = 50 etc... what would the code be to find the highest and the lowest values for this manually entered series? I am trying to reference the highest value from the series in a later calculation such as plot hourhigh = if (hour = 0) then (currenthourhigh - highesthighfromtheseriesabove). Thanks for your help!
 
Hey all,
Raghee's Daily Price Movement Range (DPMR) Indicator???
I'm not asking for the indicator, but can anyone tell me know how this works? I'd like to try my hand at programming something like this in thinkscript.

Thanks!

PJ
 
Last edited by a moderator:
Hey all,

I'm not asking for the indicator, but can anyone tell me know how this works? I'd like to try my hand at programming something like this in thinkscript.

Thanks!

PJ

sorry, i can't, because i don't know what it is. a quick search didn't find any results that explained it for me. You will have to find a site that describes what the rules are, and post the link.

---------

general info on starting a project

make an outline , then fill in more detail, then figure out the code to do each part.

start with ,
..where do you want to see something?
....chart- upper or lower
....watchlist
....scan

..what do you want to see?
....chart: lines, arrows, labels, bubbles
....list: numbers, words

..when do you want to see it?
....any bar
....last bar


searching for raghee, finds 3 pages. maybe one of those Links has some info or description to get you started.
https://usethinkscript.com/search/1083176/?q=Raghee&o=date
 
Hey all,
Raghee's Daily Price Movement Range (DPMR) Indicator???
I'm not asking for the indicator, but can anyone tell me know how this works? I'd like to try my hand at programming something like this in thinkscript.

Thanks!

PJ
I've gone ahead and moved your post to this thread. You're now in the right place to get started! You'll find great information to begin your quest.
 
I see comments that ask the question if the proposed DPMR/HMPR codes listed is good for only /ES in one instance. This leads me to believe that the code is account specific (/ES, /GC, SPY, etc). However, I don't see anything in any of the code versions that requires account specifics or reference to a specific account.

Can someone clarify what is mean regarding these references and where in the code it access account specific information to generate the DPMR/HPMR?
 

Join useThinkScript to post your question to a community of 21,000+ developers and traders.

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
438 Online
Create Post

The Market Trading Game Changer

Join 2,500+ subscribers inside the useThinkScript VIP Membership Club
  • Exclusive indicators
  • Proven strategies & setups
  • Private Discord community
  • ‘Buy The Dip’ signal alerts
  • Exclusive members-only content
  • Add-ons and resources
  • 1 full year of unlimited support

Frequently Asked Questions

What is useThinkScript?

useThinkScript is the #1 community of stock market investors using indicators and other tools to power their trading strategies. Traders of all skill levels use our forums to learn about scripting and indicators, help each other, and discover new ways to gain an edge in the markets.

How do I get started?

We get it. Our forum can be intimidating, if not overwhelming. With thousands of topics, tens of thousands of posts, our community has created an incredibly deep knowledge base for stock traders. No one can ever exhaust every resource provided on our site.

If you are new, or just looking for guidance, here are some helpful links to get you started.

What are the benefits of VIP Membership?
VIP members get exclusive access to these proven and tested premium indicators: Buy the Dip, Advanced Market Moves 2.0, Take Profit, and Volatility Trading Range. In addition, VIP members get access to over 50 VIP-only custom indicators, add-ons, and strategies, private VIP-only forums, private Discord channel to discuss trades and strategies in real-time, customer support, trade alerts, and much more. Learn all about VIP membership here.
How can I access the premium indicators?
To access the premium indicators, which are plug and play ready, sign up for VIP membership here.
Back
Top