Enivid,
First, I want to say this is a great open source version of the MP indicator and you're code is nice and clean...which is rare. Great work.
But I was wondering if you'd be willing to create a multi-session version of your MP indicator. What I mean is a version that allows for TPO profiles for multiple intraday sessions within a single calendar day. I know you have the minutes-shift as an input, but what I'm asking is whether you could create a version that allows the user to set the beginning and end time of the intraday session as well as allow for multiple sessions within each whole calendar day (I think 3 or 4 sessions is enough for each day). It may be best to fork a separate multi-session version of the indicator.
For an example of what I'm talking about, check out this indicator:
https://www.mql5.com/en/market/product/9008
The idea behind this is that the user can do a TPO profile for each intraday session, such as an Asian/European/US session in forex pairs...and the "pit" session and overnight session for stock index CFDs. For example, if I trade US stock index CFDs, the CFD (just like a futures contract) has an overnight session as well as the session in which the "trading pit" is open in the cash market. Combining these in one 24-hour (or really 23-hour) TPO profile is not as helpful as having two separate profiles: one for the overnight session and one for the regular-trading-hour cash session. The same is true for forex trading, with each of the various global continental trading sessions. The idea behind it is that, just like the prior day’s session informs the current day’s session, the prior intraday session also informs the current intraday session. All of the information is useful.
I've checked your code and tried to make these changes, but your code essentially expects a 24-hour whole-day session and does not easily lend itself to allowing the user to set an arbitrary-length intraday sessions within one calendar day. It would be difficult to make this change…which is why I’m contacting you on your forum. It would also be nice to set the length of each TPO to either 15 mins or 30 mins, but that doesn’t really matter too much when using the “dots” or bars for the TPOs rather than letters for TPOs. I very much appreciate your use of bars that gradually change color later into the session rather than letters…your method is so much better, which is one of the reasons I was first drawn to this indicator. The visual appeal is nice, just like your code.
I guess I would prefer to have this in MQL4 but I could easily translate between the languages if you wanted to offload some of the grunt work on to me. I think you have a great foundation and this conceptual change would make a world of difference in the usefulness of the indicator. Plus, translating this to MQL5 allows American futures traders to use it too...in addition to forex and CFD traders. An MQL5 version could also give the option of switching between TPO profiles and true/real volume profiles (assuming the broker and exchange provides real volume, such AMP Futures in America). MQL4 of course only allows for TPO profiles.
Just to be clear, I would imagine (altho you may certainly have better ideas) such a multi-intraday-session indicator would require inputs for the start time and stop time (in whatever the chart time is) for each intraday session, as well as Boolean input to turn on/off each intraday session….exactly like the link above. This is why I think it would be better to fork the code out into a separate multi-session intraday indicator and keep the current version for whole-day/week/month TPO profiles separate from the multi-intraday-session version. You may also want to restrict its use to H1 or M30 timeframes plus any lower timeframe. If you’d like to discuss the code, let’s do that. I can be of service or not, that’s your call. I am not a professional coder, but I’ve been writing code as a hobby since high school many, many years ago. And I actually started writing MQL back when MT3 was around back in the early 2000s.
I think you have a great thing going here that you’ve been working on for several years, and adding multiple intraday sessions of arbitrary length is the clear next step for this indicator….and it would certainly be of a lot of use to any MT4/5 trader. I am certain many people would find such an open source indicator very useful. There is not another such indicator that is currently open source, but of course there are several closed source versions. Yours would be the first, I believe.
PS. …I also want to point out that it is not that I want this “for free.” I already own multiple closed source versions that are available on the MQL marketplace. I own several:
https://www.mql5.com/en/market/product/14244,
https://www.mql5.com/en/market/product/14288,
https://www.mql5.com/en/market/product/3033,
https://www.mql5.com/en/market/product/11796. The closed source versions are not expensive. Rather, my goal is to have an open source version for the community to grow and expand upon. That’s why I’m contacting you about this…just to share ideas out in the open.
PPS. If I’m wrong, and there is an open source version out there that does do this, please point me to it. Though, I do appreciate the visuals of yours so all I’d end up doing is trying to merge that functionality with the visual style of yours anyway.