Documente Academic
Documente Profesional
Documente Cultură
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}}- {{INTERVAL}} {{DATE}} O= %g, H= %g, L= %g, C= %g
(%.1f%%) V= " +WriteVal( V, 1.0 ) +"\n{{VALUES}}", O, H, L, C,
SelectedValue( ROC( C, 1 )) ));
ThisStyle = styleCandle;
ThisTitle = "";
_O=O; _C=C; _H=H; _L=L;
ThisColor = IIf( _C>_O, cBull, IIf(_C<_O, CBear, CLine));
switch (pStyle )
{
case "Solid Candle":
SetBarFillColor( ThisColor );
break;
case "Bar":
ThisStyle = styleBar;
break;
case "Line":
ThisStyle = styleLine;
ThisColor = cLine;
break;
case
_C =
_O =
_H =
_L =
"Heikin-Ashi":
(O+H+L+C)/4;
AMA( Ref( _C, -1 ), 0.5 );
Max( H, Max( _C, _O ) );
Min( L, Min( _C, _O ) );
}
PlotOHLC( _O, _H, _L, _C, ThisTitle, ThisColor, ThisStyle);
GraphXSpace = 8;
_SECTION_END();
_SECTION_BEGIN("BandStop");
/* Done by Rajandran R */
/* Author of www.marketcalls.in */
// BBands_Stop_v1.mq4 by igorad2004@list.ru
// translation in Amibroker AFL, E.M.Pottasch, 2011
// Modified By KelvinHand
Length=Param("Length",20, 2); // Bollinger Bands Period
Deviation=Param("Deviation",2);
// Deviation was 2
MoneyRisk=Param("Money Risk", 1);
LineStyle=ParamToggle("Display line mode", "No|Yes", 1); // Display line mode: 0
-no,1-yes
cUpTrendLine = ParamColor("UpTrendLine", colorGreen);
cDnTrendLine = ParamColor("DownTrendLine", colorRed);
// Offset Factor
TurnedUp=Nz(StaticVarGet("TurnedUp"));
TurnedDown=Nz(StaticVarGet("TurnedDown"));
SoundON = ParamToggle("Sound","Off|On",1);
procedure CalcTrend_proc(bbtop,bbbot,Length,MoneyRisk,SoundON,TurnedUp,TurnedDow
n)
{
global UpTrendLine;
global DownTrendLine;
global smax;
global smin;
UpTrendLine=Null;
DownTrendLine=Null;
smax=Null;
smin=Null;
trend=0;
for (i=Length+1; i<BarCount; i++)
{
smax[i]=bbtop[i];
smin[i]=bbbot[i];
if (C[i]>smax[i-1]) trend=1;
if (C[i]<smin[i-1]) trend=-1;
if(trend>0 && smin[i]<smin[i-1]) smin[i]=smin[i-1];
if(trend<0 && smax[i]>smax[i-1]) smax[i]=smax[i-1];
bsmax[i]=smax[i]+0.5*(MoneyRisk-1)*(smax[i]-smin[i]);
bsmin[i]=smin[i]-0.5*(MoneyRisk-1)*(smax[i]-smin[i]);
if(trend>0 && bsmin[i]<bsmin[i-1]) bsmin[i]=bsmin[i-1];