[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [amibroker] HOW TO PLOT PRICE, MACD, STOCHASTIC ON ONE CHART?



PureBytes Links

Trading Reference Links

bistrader --
Looks like you might be trying to take to large a bite out of that sandwich all at once.

Can you do the following to your satisfaction?
1.  Plot the price chart with the EMA.  Leave the shapes for later.
2.  Plot the MACD histogram on the same chart.  Again, shapes for later.
3.  Plot the Stochastic on the same chart.
  Again, shapes for later.

I gave up trying to do the above long ago.  Instead, I have three separate charts, displayed horizontally.  I use one .afl, with the following construct:

////---- code -----/////
chartID = xxxx;  // get xxxx using 'insert' indicator, not 'Apply' indicator.
// do as many inserts has you want charts, in your case 3.
if(GetChartID()==chartID){
_SECTION_BEGIN("Price");
    ; // plot price and emas here with shapes if desired
_SECTION_END();
}
if(GetChartID()==chartID + 1){
_SECTION_BEGIN("MACD");
    ; // plot MACD here with shapes if desired
_SECTION_END();
}
if(GetChartID()==chartID + 1){
_SECTION_BEGIN("Stoch");
    ; // plot Stoch here with shapes if desired
_SECTION_END();
}
////---- end code -----/////

Once you've have that working you can move the size and reorder the charts by using on screen manual manipulation.  Scale, display dates, etc. independently.



bistrader wrote:
 

I am having problems with Plot statements in one afl that I want to plot Price (with EMAs) at the top, Macd histogram in the middle and stochastic at the bottom. Each of the 3 has PlotShapes as well.

Here is what I have.
1. I use the following for price with EMAs and with plotshape arrows at top. This works fine:
Plot(Close, "Close",colorBlack,styleThick);
Plot(ema, "EMA",colorRed,styleThick);
OffsetTradeArrow = -25;
PlotShapes(ema_buy*shapeUpArrow, colorGreen, 0, Fund, OffsetTradeArrow);
PlotShapes(ema_sell*shapeDownArrow, colorRed, 0, Fund, OffsetTradeArrow);

2. Then, I move on to Macd histogram where I am having problems with Min and Max values to start with and then with how to overlay its PlotShapes:
Plot(MACD_Histo,"MACD_Histo",colorBlack,styleHistogram|styleOwnScale,min?,max?);
OffsetTradeArrow = -25;
PlotShapes(macd_buy*shapeUpArrow, colorGreen, 0, MACD_Histo, OffsetTradeArrow);
PlotShapes(macd_sell*shapeDownArrow, colorRed, 0, MACD_Histo, OffsetTradeArrow);

I play around (a lot) using an rsi example posted here but not making any progress. I can get Macd_Histo times 100 (Macd_Histo*100) to plot with min at -100 and max at 100/20*100 or 500, but have no idea why I had to use -100 for min value. The 100/20*100 is from the rsi example posted here. And, I can not figure out how to get PlotShapes for macd to be over this Macd_Hist plot.

3. Then, I move onto Stochastic and can only get this to plot over the Macd_histo and not below it. So, can not figure out how to do min value, max value and then plotshapes over this.
Plot(StochDSlow," Slow %D",colorRed,styleThick|styleOwnScale,min?,max?);

OffsetTradeArrow = -25;
PlotShapes(stoch_buy*shapeUpArrow, colorGreen, 0, StochDSlow, OffsetTradeArrow);
PlotShapes(stoch_sell*shapeDownArrow, colorRed, 0, StochDSlow, OffsetTradeArrow);

Help appreciated. Examples too. Thanks.