TPO aka Market Profile
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Could you please describe the meaning of the inputs?
Was anyone able to get this to work? When I add this to a chart I receive an error message saying:
Array bounds: Wrong index value: -4500
Regards
- Fanus
Array bounds: Wrong index value: -4500
Regards
- Fanus
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Kayak, I'll try but I'm not sure that this is possible at all.hello
Stanley could you please modify this code. so we could see each letter in different color as a option in inputs
thanks Kayak
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Fanus, please be more specific. Which version of MultiCharts do you have, which symbol and data resolution? Please post a screenshot if possible. Thanks.Was anyone able to get this to work? When I add this to a chart I receive an error message saying:
Array bounds: Wrong index value: -4500
Regards
- Fanus
I guess it's the symbol you are using that's making the trouble (for example YM might need a larger Array size). Enlarge the Array size (as long as the error keeps coming) and it should work.Was anyone able to get this to work? When I add this to a chart I receive an error message saying:
Array bounds: Wrong index value: -4500
Regards
- Fanus
Chris
I am using the latest MC beta version. I am using symbol ESH7 and I tried resolutions from 1 minute to 2 hours. I didn't bother going with higher resolutions, as this will be pointless to create a MP chart above that.
I increased the array size to 1000000 (1 million) and it didn't work on any resolution I tried.
I don't really see how a screen print will help? I receive a popup window with the error described above. There isn't any other information. If you need more specific information, I will be glad to provide that.
I think this will be useful when people post studies in this forum to provide more documentation on how to use it and what the requirements are instead of expecting people to figure it out for themselves.
Regards
- Fanus
I increased the array size to 1000000 (1 million) and it didn't work on any resolution I tried.
I don't really see how a screen print will help? I receive a popup window with the error described above. There isn't any other information. If you need more specific information, I will be glad to provide that.
I think this will be useful when people post studies in this forum to provide more documentation on how to use it and what the requirements are instead of expecting people to figure it out for themselves.
Regards
- Fanus
The last thing I can suggest to you is to look at you price scale settings in QM. You should have 1/100 there for ES.
I can imagine that there is the possibility that a price scale of 1/100000 for example will result in the array getting out of bounds. But I have not checked the XML code, if this is true - it's only a guess.
I can imagine that there is the possibility that a price scale of 1/100000 for example will result in the array getting out of bounds. But I have not checked the XML code, if this is true - it's only a guess.
@all
Is there a way to highlight the right Point of Control with this code?
I found out that mid = tpo[x]; marks the highest TPO. But how do i determine the right POC if i have more than one price with the same highest TPO value inside the value area?
For example if i have a value area from 6600 to 6630 and one TPO count of 14 at 6605 and another at 6620.
Is there a way to highlight the right Point of Control with this code?
I found out that mid = tpo[x]; marks the highest TPO. But how do i determine the right POC if i have more than one price with the same highest TPO value inside the value area?
For example if i have a value area from 6600 to 6630 and one TPO count of 14 at 6605 and another at 6620.
sp
Not sure where I got this from but hope it helps
"If there is more than 1 price with the same 'most' TPO's then the price closest to the mid-point of the range (high - low) is used.(Volume Poss Better)
If the 2 'most' TPO prices are equi-distance from the mid-point then the price on the side of the mid-point with the most TPO's is used.
If there are equal number of TPO's on each side then the lower price is used."
Not sure where I got this from but hope it helps
"If there is more than 1 price with the same 'most' TPO's then the price closest to the mid-point of the range (high - low) is used.(Volume Poss Better)
If the 2 'most' TPO prices are equi-distance from the mid-point then the price on the side of the mid-point with the most TPO's is used.
If there are equal number of TPO's on each side then the lower price is used."
Thanks Kayak.
I don't know where you would set the "resolution to 25" in Multichart. But after trying several things I could make it work for the Dax future by selecting a 30 min chart and in the quote manager I set the price scaling to "As is". (I just noticed that the session settings are important too)
Looks beautiful. Thanks Robin Hood.
Today I started to read "Mind over Markets" so this will be very helpful.
I don't know where you would set the "resolution to 25" in Multichart. But after trying several things I could make it work for the Dax future by selecting a 30 min chart and in the quote manager I set the price scaling to "As is". (I just noticed that the session settings are important too)
Looks beautiful. Thanks Robin Hood.
Today I started to read "Mind over Markets" so this will be very helpful.
I have been trying to download the market profile indicator but am having a problem. I went to the traderslabratory below and while I can get it to download to TS I cannet get it to imprt or compile on my PLEditor. I would appreciate any help as I have learned to use this indicator well.
It is a basic study on Ensign it really sould be one for multicharts as well.
Thanks
It is a basic study on Ensign it really sould be one for multicharts as well.
Thanks
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Which indicator do you mean?I have been trying to download the market profile indicator but am having a problem. I went to the traderslabratory below and while I can get it to download to TS I cannet get it to imprt or compile on my PLEditor. I would appreciate any help as I have learned to use this indicator well.
It is a basic study on Ensign it really sould be one for multicharts as well.
Thanks
I have tried to download and compile both the TPO download that is at the start of this thread and then i went to //www.traderslaboratory.com/forums/f46/ma ... n-646.html. I could get this one to work on TS but I cant get it to import and compile through PLEditor.
These market profile programs do work with TS so I am guessing there is a way to get them to work with MC. If not is there another market profile program that will work with MC?
Thanks
These market profile programs do work with TS so I am guessing there is a way to get them to work with MC. If not is there another market profile program that will work with MC?
Thanks
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Doesn't it work?I have tried to download and compile both the TPO download that is at the start of this thread
It seems to be source protected but I'll check this further.and then i went to //www.traderslaboratory.com/forums/f46/ma ... n-646.html. I could get this one to work on TS but I cant get it to import and compile through PLEditor.
Save the XML-file to your hard-disk and import it with PowerLanguage editor.no, the code posted at the start of this thread. it is just code when i try to download it not an indicator i can import to multicharts.
how does one import it to multicharts.
thanks
wayne
- Stanley Miller
- Posts: 556
- Joined: Jul 26 2005
- Has thanked: 3 times
Could you please post the screenshot of the error message?thanks. i did get it imported but get the array bounds -4500 error message. did anyone figure out the problem with that. i am using a 1 min day only chart. esignal data and dec 18 multicharts build.
thanks
wayne
This morning, we found this possible cure.........
In the chart window where you have placed the market indicator, go to Format Symbol > Settings > Data Range......and set to something like 500 Bars Back from Current Date.
All other settings discussed up to this point did not provide any results.
In the chart window where you have placed the market indicator, go to Format Symbol > Settings > Data Range......and set to something like 500 Bars Back from Current Date.
All other settings discussed up to this point did not provide any results.
How is possible ti create real market profilr, if this is real?
www.tssupport.com/img/design/scr15b.gif
www.tssupport.com/img/design/scr15b.gif
- Attachments
-
- scr15sm.gif
- (3.04 KiB) Downloaded 6386 times
- Andrew Kirillov
- Posts: 1589
- Joined: Jul 28 2005
- Has thanked: 2 times
- Been thanked: 31 times
- Contact:
Yes, If I'm not mistaken it is the one you can take from this thread.
- ABC
- Posts: 733
- Joined: Dec 16 2006
- Location: www.abctradinggroup.com
- Has thanked: 126 times
- Been thanked: 415 times
- Contact:
Zukkaweb,
it works correct, but from time to time people have encountered an array bounds error.
I have taken a look at the code and I guess I came up with a simple solution for the problem.
The code uses the High and Low of the chart and goes through the arrays from High to Low with loops. An array bounds is an indication for an overflow in one (or more) of the arrays. One solution would just be to enlarge the array size, until you don’t get error messages anymore. However I’d strongly suggest not do this, because you might end up with very large array sizes and therefore the code will be quite slow.
The solution I am going to show you will on the one hand avoid this and on the other hand will prevent other errors that might happen with wrong settings in the Quotemanager.
First some background to understand what exactly can cause the error. If you open up the Quotemanager and take a look at the settings for a specific symbol – I will do the ESH8 in this example – and go to the “settings tab”, here is what it might look like:
If you are using the default settings for the Globex, you should have a “Price Scale” of 1/10000 and a “Min. Movement” value of 1. This will result in four decimal places on your chart.
“Min. Movement” is the minimum movement the symbol can make i.e. 1 * 1/10000 in this case. So for every full ES point you end up with 10000 minimum movements. This will not change anything on your chart, but it will affect the TPO study. As the ES moves in quarters of a full point, the chart will reflect these four minimum movements per full point, the remaining are 9996 values are just in the background.
The TPO stuffy however will take each of the 10000 values and stores them in the array – doesn’t matter if there is information of value contained. As the study comes with an array size of 1000, you can see that one point is already enough to create the overflow, which is shown by the array bounds error message.
Now to the solution:
Take a price scale setting of your choice (for example I use 1/100 for ES) and take the number of ticks per full point, which is 4 in our example (a value you can find on the website of the exchanges if you are not sure). Take the denominator of the price scale setting and divide it through the number of ticks per full point. The result is your setting for the “Min. Movement” input: 100 / 4 = 25
If you’d like to stay with the 1/10000 the “Min. Movement” input equals 2500.
Finally as you are already in the settings tab, you can take a look at the “Big Point Value”, which is the value of one full point – in our example the value of four ticks. You can either find this value on the exchanges website or by multiplying the tick value with the number of ticks per full point.
I haven’t found that “Daily Limit” has effect on something, so it’s totally up to you to set the input.
After applying the new settings you can open a new chart of your symbol and load the TPO indicator. If everything went correct, the array bounds error shouldn’t occur any more (as long as the High and Low of the chart is less than 1000 ticks apart – if you ever should run into this special case, you can still multiply the array size).
I hope that I have made the concept as clear as possible, without getting too complicated. But being a great teacher is not what I am, so if you have any questions left, please post them here.
Best regards,
ABC
it works correct, but from time to time people have encountered an array bounds error.
I have taken a look at the code and I guess I came up with a simple solution for the problem.
The code uses the High and Low of the chart and goes through the arrays from High to Low with loops. An array bounds is an indication for an overflow in one (or more) of the arrays. One solution would just be to enlarge the array size, until you don’t get error messages anymore. However I’d strongly suggest not do this, because you might end up with very large array sizes and therefore the code will be quite slow.
The solution I am going to show you will on the one hand avoid this and on the other hand will prevent other errors that might happen with wrong settings in the Quotemanager.
First some background to understand what exactly can cause the error. If you open up the Quotemanager and take a look at the settings for a specific symbol – I will do the ESH8 in this example – and go to the “settings tab”, here is what it might look like:
If you are using the default settings for the Globex, you should have a “Price Scale” of 1/10000 and a “Min. Movement” value of 1. This will result in four decimal places on your chart.
“Min. Movement” is the minimum movement the symbol can make i.e. 1 * 1/10000 in this case. So for every full ES point you end up with 10000 minimum movements. This will not change anything on your chart, but it will affect the TPO study. As the ES moves in quarters of a full point, the chart will reflect these four minimum movements per full point, the remaining are 9996 values are just in the background.
The TPO stuffy however will take each of the 10000 values and stores them in the array – doesn’t matter if there is information of value contained. As the study comes with an array size of 1000, you can see that one point is already enough to create the overflow, which is shown by the array bounds error message.
Now to the solution:
Take a price scale setting of your choice (for example I use 1/100 for ES) and take the number of ticks per full point, which is 4 in our example (a value you can find on the website of the exchanges if you are not sure). Take the denominator of the price scale setting and divide it through the number of ticks per full point. The result is your setting for the “Min. Movement” input: 100 / 4 = 25
If you’d like to stay with the 1/10000 the “Min. Movement” input equals 2500.
Finally as you are already in the settings tab, you can take a look at the “Big Point Value”, which is the value of one full point – in our example the value of four ticks. You can either find this value on the exchanges website or by multiplying the tick value with the number of ticks per full point.
I haven’t found that “Daily Limit” has effect on something, so it’s totally up to you to set the input.
After applying the new settings you can open a new chart of your symbol and load the TPO indicator. If everything went correct, the array bounds error shouldn’t occur any more (as long as the High and Low of the chart is less than 1000 ticks apart – if you ever should run into this special case, you can still multiply the array size).
I hope that I have made the concept as clear as possible, without getting too complicated. But being a great teacher is not what I am, so if you have any questions left, please post them here.
Best regards,
ABC
- Attachments
-
- Screenshot - 10.03.2008 , 18_44_06.png
- (36.51 KiB) Downloaded 6370 times
-
- Screenshot - 10.03.2008 , 18_53_16.png
- (11.35 KiB) Downloaded 6293 times
-
- Screenshot - 10.03.2008 , 18_43_49.png
- (33.2 KiB) Downloaded 6551 times
I find this on:
http://eotpro.com/EOTPRO%20INDICATOR%20PAGE.htm
BARTIME.eld tells you the average bar time on a volume or tick chart
VWAP_H.eld Volume weighted average price, great support and resistance areas
How could we use in right way in market profile?
it wuolb be great if is it possible to extend the Volume_profile inside the graph end not on the left or on the right, this is more powerfull to see the level.Is it possible?
http://eotpro.com/EOTPRO%20INDICATOR%20PAGE.htm
BARTIME.eld tells you the average bar time on a volume or tick chart
VWAP_H.eld Volume weighted average price, great support and resistance areas
How could we use in right way in market profile?
it wuolb be great if is it possible to extend the Volume_profile inside the graph end not on the left or on the right, this is more powerfull to see the level.Is it possible?
I cannot get this indicator to print the Globex session prior to Mid-night. My session setting is 16.30 to 9.30 ET the next day. The data will show on a bar chart but not as TPO.
Any assistance would be most appreciated
Thank you
ax
Any assistance would be most appreciated
Thank you
ax
You try to use no globex section, in europe the time is 15,30 to 22.15I cannot get this indicator to print the Globex session prior to Mid-night. My session setting is 16.30 to 9.30 ET the next day. The data will show on a bar chart but not as TPO.
Any assistance would be most appreciated
Thank you
ax
-
- Posts: 310
- Joined: Nov 02 2010
- Has thanked: 26 times
- Been thanked: 23 times
Could include MarketProfile in new version of multicharts?
- JoshM
- Posts: 2196
- Joined: May 20 2011
- Location: The Netherlands
- Has thanked: 1544 times
- Been thanked: 1565 times
- Contact:
Who know what might happen with enough votes:That would be nice to include it by default in the version 8
MultiCharts Project Management - Issue MC-471 - Market Profile in Multicharts
-
- Posts: 310
- Joined: Nov 02 2010
- Has thanked: 26 times
- Been thanked: 23 times
-
- Posts: 310
- Joined: Nov 02 2010
- Has thanked: 26 times
- Been thanked: 23 times
Make a request on pm, and link the vote.