BETTER VOLUME

Enivid

Administrator
Staff member
Nov 30, 2008
18,604
1,366
144
Odesa
www.earnforex.com
In MQL5, I use single buffer to draw all the volumes, that is why it uses color settings "in one line" and has no separate styling options. Redoing it for several buffers is too much hassle. If you really want those changes feel free to try applying them yourself - I will try to guide you through the process.
 
M

mjackson

Guest
In MQL5, I use single buffer to draw all the volumes, that is why it uses color settings "in one line" and has no separate styling options. Redoing it for several buffers is too much hassle. If you really want those changes feel free to try applying them yourself - I will try to guide you through the process.

Well as I said if you are not willing to do it right you shouldn't start...you did it correctly in SDRW , Fractals...same thing has to be for better volume....

So copy and Paste 4 linese for each object and there are 4 objects is hard work for you?

By the way even that single line width doesnt work : it has only 2 widths no matter which number you set; it is either thinnest or thickest regardless which number one put between 2-5 for width...Terible.

I am not going to use this poorly coded Better Volume indicators for MT5, until all issues are fixed, and advise other prospective users to use only BetterVolume 1.4 and BetterVolumeChartBarsPart1 1.4 and BetterVolumeChartBarsPart2 1.4 for MT4.
 

Attachments

  • EURUSDM12.png
    EURUSDM12.png
    133.2 KB · Views: 197
  • EURUSDM4.png
    EURUSDM4.png
    77.2 KB · Views: 177
  • EURUSDMonthly.png
    EURUSDMonthly.png
    73.8 KB · Views: 175

SwissFXTrader

Trader
Sep 7, 2012
4
0
12
Is someone able to update the Better volume indicator with updated source code from the originator of the code? It is in Tradestation easy language and was updated for use intraday. The link is here inside the "free code" link on the page . Download the zip. Would like to have in it MT4 language. I also submitted a new thread on subject. Thank you.

http://emini-watch.com/free-stuff/volume-indicator/
 
M

mjackson

Guest
No point to convert that updated version as it concerns a Tradestation-only logic, which isn't transferable to MetaTrader.

BetterVolume 1.4(For MT4) which you coded for MT5 was initialy made for TS. ...then someone coded it for MT4 creating at that time final version BetterVolume 1.4.

So if you are still willing to update it with new code( probably change is in formula(s)) would be highly appreciated by many of us who use volume for trading.

Thank you inadvance.
 
Last edited by a moderator:
M

mjackson

Guest
Enivid, I tried to add alert on MT5 version but doesnt work. Can you help please?


if ((AlertClimaxBuyOn) && (HistogramColor = 1) && (i == rates_total - 1) && (LastAlertTime != Time[rates_total - 1])) Alert("Climaxbuy");

if ((AlertClimaxBuyOn) && (HistogramColor = 2) && (i == rates_total - 1) && (LastAlertTime != Time[rates_total - 1])) Alert("Climaxsell");
 

Enivid

Administrator
Staff member
Nov 30, 2008
18,604
1,366
144
Odesa
www.earnforex.com
What happens when you run it?
(HistogramColor = 1) should be (HistogramColor == 1) and the same for the second condition. When you use "=", it means that the right-side value is moved to the left-side variable. When you use "==", it means that you check the right-side value against the left-side value.
 
M

mjackson

Guest
What happens when you run it?
(HistogramColor = 1) should be (HistogramColor == 1) and the same for the second condition. When you use "=", it means that the right-side value is moved to the left-side variable. When you use "==", it means that you check the right-side value against the left-side value.



Thank you.
Gives 2 warnings:
posible losss of data due to type conversion and indicator buffers amount is less than needed

Almost working ...endlesly repeat signal/alert...need only once per white/red bar, only on last closed bar.
 
Last edited by a moderator:

SwissFXTrader

Trader
Sep 7, 2012
4
0
12
BetterVolume 1.4(For MT4) which you coded for MT5 was initialy made for TS. ...then someone coded it for MT4 creating at that time final version BetterVolume 1.4.

So if you are still willing to update it with new code would be highly appreciated by many of us who use volume for trading.

Thank you inadvance.

I too would greatly appreciate if a new updated coding of better volume for MT4 be created. Hopefully Enivid will come through. Thank you.
 

Enivid

Administrator
Staff member
Nov 30, 2008
18,604
1,366
144
Odesa
www.earnforex.com
Thank you.
Gives 2 warnings:
posible losss of data due to type conversion and indicator buffers amount is less than needed

Almost working ...endlesly repeat signal/alert...need only once per white/red bar, only on last closed bar.
Could you please attach your modified indicator here?
 
M

mjackson

Guest
Could you please attach your modified indicator here?

Enivid, I attached two files and in files itself I made comments, included but commented part of code of SDRW indicator so to save you some time...please let me know if you have questions.

Thank you
 

Attachments

  • BetterVolume-2.mq5
    7.5 KB · Views: 292
  • BetterVolumeChartBars-2.mq5
    7.5 KB · Views: 237

Enivid

Administrator
Staff member
Nov 30, 2008
18,604
1,366
144
Odesa
www.earnforex.com
If you use LastAlertTime != Time[rates_total - 1] to check if the current bar has already been alerted, then you have to add LastAlertTime = Time[rates_total - 1] right after alert. Something like this:

MQL4:
if ((AlertDemandClimaxBuyOn) && (HistogramColor[i] ==0) && (i == rates_total - 1) && (LastAlertTime != Time[rates_total - 1]))
{
   Alert("Climaxbuy");
   LastAlertTime = Time[rates_total - 1];
}

The same should be done with all other alert conditions too.
 
Last edited:
M

mjackson

Guest
If you use LastAlertTime != Time[rates_total - 1] to check if the current bar has already been alerted, then you have to add LastAlertTime = Time[rates_total - 1] right after alert. Something like this:

MQL4:
if ((AlertDemandClimaxBuyOn) && (HistogramColor[i] ==0) && (i == rates_total - 1) && (LastAlertTime != Time[rates_total - 1]))
{
   Alert("Climaxbuy");
   LastAlertTime = Time[rates_total - 1];
}

The same should be done with all other alert conditions too.



here is how was done in MT4 in separated indicator:


---------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------

extern bool AlertOnBarClimax = true;
double D[],S[],W[];
bool redVol;
bool whiteVol;

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
Offset = Offset*Point;
StopOffset = StopOffset*Point;
EntryOffset = EntryOffset*Point;
BreakEven = BreakEven*Point;
TakeProfit = TakeProfit*Point;

SetIndexBuffer(0,D);
SetIndexStyle(0,DRAW_ARROW,0,0);
SetIndexArrow(0, 233);
SetIndexLabel(0,"Demand");

SetIndexBuffer(1,S);
SetIndexStyle(1,DRAW_ARROW,0,0);
SetIndexArrow(1,234);
SetIndexLabel(1,"Supply");

SetIndexBuffer(2,W);
SetIndexStyle(2,DRAW_ARROW,0,1);
SetIndexArrow(2, 251);
SetIndexLabel(2,"debug");

//----
return(0);
}

//---------- BEGIN CDRW Code ---------------\\

spd1 = High[i+1] - Low[i+1];
spd2 = High[i+2] - Low[i+2];

D=0; S=0; W=0;

v1=iVolume(NULL,0,i+1);
v2=iVolume(NULL,0,i+2);
if ( spd1 > spd2 )
{
if ( v1 < v2 )
{
if ( High[i+1]-Close[i+1] < Close[i+1]-Low[i+1] )
{
S[i+1] = 0;
}
if ( High[i+1]-Close[i+1] > Close[i+1]-Low[i+1] )
{

D[i+1] = 0;
}
}
if ( v1 > v2 )
{
if ( High[i+1]-Close[i+1] < Close[i+1]-Low[i+1] )
{
if (redVol)//originaö
{
D[i+1] = Low[i+1] - Offset;
if ( PriceLabelsOn )


}
}
if ( High[i+1]-Close[i+1] > Close[i+1]-Low[i+1] )
{
if (whiteVol)
{
S[i+1] = High[i+1] + Offset;


}//end if white vol
}//if impo bar
}//end if v1 v2
}

//---------- END CDRW Code ---------------\\


} //end for

if ( AlertOnBarClimax )
{
if ( (redVol && D[1] != 0) && alertonce != Time[0] )
Alert("Demand Bar with Climax on ", Symbol()," ","M",Period() );
if ( (whiteVol && S[1] != 0) && alertonce != Time[0] )
Alert("Supply Bar with Climax on ", Symbol() ," ","M",Period());
alertonce = Time[0];
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
DrawVSAArrows();
if (true)
DrawSRLines();

return(0);
}
//+------------------------------------------------------------------+


Thank you .Well there is no alert. I want to have alert let say on red bar when it close...after that red bar close should be alert and new bar will start...basicaly that would be last closed bar. So how to fix this?

if ((AlertSupplyClimaxSellOn) && (HistogramColor == 3) && (i == rates_total - 1) && (LastAlertTime != Time[rates_total - 1]))
{
Alert("Supply on Climax");
LastAlertTime = Time[rates_total - 1];
}


I need to add this condition in Better Volume barcharts indicator:

condition for SDRW Supply and white bar from BV ...for red bar and demand (SDRW) also....and on all other red and whit just to have alert(no conditions)

Code is above for alert and CDRW condition...you createrd this indicator too.

So how to do that?
 
Last edited by a moderator:
M

mjackson

Guest
Enivid

Here is indicator...Error: Array out of range....Please make it work, on picture it shows how it should look like...whereever is arrow it should give signal....Arrows are Demand and supply from SDRW indicator...
So again to have alert on Demand it has to be red bar and arrow up (demand conditions from SDRW indicator) Arrow should be as shown in SDRW indicator and attached picture. Similar is for supply. Thank you...
 

Attachments

  • audusdm30-2.jpg
    audusdm30-2.jpg
    78.7 KB · Views: 232
  • BetterVolumeChartBars-3.mq5
    7.1 KB · Views: 203
Last edited by a moderator:
  • 👍
Reactions: c0d3mind
M

mjackson

Guest
Enivid please make that indicator work with added alerts, described and shown on picture.: Alert on red and white bars combined with SDRW demand and supply arrows.

Thank you
 

rich

Trader
Jun 8, 2013
1
0
12
i agree, Question

i had a version of this indicator, nut not version 1.4, i found the colors where all messed up in regards to how they are suppose to print, your version seems to look allot better.
are these what the colors mean on yours, or are my settings messed up? also did u ever get a mt5 version?




Red bar - wide range, high volume (climax bar). Can be seen at beginning of uptrend, end of uptrend., and in continuation of downtrends.

Green bar - low range, high volume (high churn bar). Can be seen at beginning of uptrend, end of uptrend, and continuation of downtrend.

White bar - low volume, high range (low churn bar). Can be seen at bottoms, tops, and continuation of uptrend.

Yellow bar - low volume, low range. Seen at similar places to the low churn bar(white bars).

Magenta bar - Climax volume plus High volume churn - both the conditions are rare
 
M

mjackson

Guest

Hello Enivid

Please make it just for one signal: red bar(betterVolume) + up arrow( demand from SDRW) with alert ("Demand on Climax)...There are 6 alerts(3 for red bar and 3 for white bar) in total so for other 5 I will do it having an example....Please.

---------

I just want to remind you that this indicator has 9000+ viewers! Only 2 other indicators: CCI arrows and Fisher has more ....for now.
Obviously, knowing history of this indicator, you are refusing to help to so many people because of me, conflict between you and me. That is not fair...I assume that you are one of owners of the website, administrator programmer and trader. As such I believe that website was created to help people (retail traders)...Why did you stop in this particular case to help other 9000 people? If I am reason then that is very poor and selfish and ridiculous revenge. It is not fair that you punish other 9000 people because of me.

I believe that you will change your mind for better and back to your and website's goal to help retail traders to find their way to deal with market makers and make living. Hope as many others to see this new indicator working soon. Thank you.
 
Last edited by a moderator:

KH.MOSHIUR

Trader
Jun 27, 2013
1
0
17
Chuadanga, Bangladesh
In Forex MT4 volume doesn't really represent anything. Yes, it depends on the number of ticks during the period, but it's different in every broker and has not connection with reality but rather with the data feed connection type of the particular broker. You'd better use volumes of the ICE currency futures or something like in forex trade.
 

Perico141

Trader
Feb 7, 2014
1
0
12
This is one of indicators that I use...it was created here for trade station then someone coded it for MT4...It shows market activities. I would like to have it for MT5...Thank you.
Does anyone know if there is an updated version of Better Volume 1.4 TRO Modified? To work with the new 600 MT4 build?

Thanks
Pete