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

[amibroker] help too many error in formula



PureBytes Links

Trading Reference Links

/* TSKPType 1, 2, or 3 setups
Type 1	Buy setup																Sell setup
				A higher low is in place											A lower high is in place
				A Blue Arrow below a bar											A Red Arrow above a bar
				The bar is an up or dojii blue bar								The bar is an down or dojii red bar
				A900 above Autostop													A900 below Autostop
				Medium remained blue during the recent retracement			Medium remained red during the recent retracement

Type 2	Buy setup																Sell setup
				A higher low is in place											A lower high is in place
				A Blue Arrow below a bar											A Red Arrow above a bar
				The bar is an up or dojii blue bar								The bar is an down or dojii red bar
				A900 above Autostop													A900 below Autostop
				Price closed above KPWaterlevel									Price closed below KPWaterlevel
				Medium changed to red during the recent retracement		Medium changed to blue during the recent
				AND was blue at the time when the Blue up arrow				retracement AND was red at the time when the red
				appeared.																up arrow appeared.

Type 3	Buy setup																Sell setup
				A higher low is in place											A lower high is in place
				A Blue Arrow below a bar											A Red Arrow above a bar
				The bar is an up or dojii blue bar								The bar is an down or dojii red bar
				A900 above Autostop													A900 below Autostop
				Price closed above KPWaterlevel									Price closed below KPWaterlevel
				Medium changed to red during the recent						Medium changed to blue during the recent
				retracement, was still red at the time when the Blue		retracement, was still blue at the time when the Red
				up arrow appeared but above the Moving Average				down arrow appeared but below the Moving Average

*/
SetBarsRequired(350, -0);

//user parameters
parmPlotScoreCard = ParamToggle("Plot KPScoreCard", "No|Yes", 1);
parmPlotA900AutoStop = ParamToggle("Plot A900/AutoStop", "No|Yes", 0);
parmA900Color = ParamColor("A900 Color", colorWhite);
parmA900Style = ParamStyle("A900 Style", styleLine, maskAll);
parmAutoStopColor = ParamColor("AutoStop Color", colorYellow);
parmAutoStopStyle = ParamStyle("AutoStop Style", styleLine, maskAll);
parmPPTextColor = ParamColor("PP Text color", colorBlack);
parmPPTrndColorUp = ParamColor("PP Trend Up color", ColorRGB(167,224,243) );
parmPPTrndColorDn = ParamColor("PP Trend Dwn color", ColorRGB(255,192,203) );
parmPPTextOffSet = Param("PP OffSet", 0.60, 0.40, 1.5, 0.1);
parmTickMultipler = Param("M/W tick allowance", 1, 0, 10, 1);
parmA900AutoStopX = ParamToggle("Plot A900/AutoStop Cross", "No|Yes");
parmA900AutoStopColorX = ParamColor("A900/AutoStop Cross Color", colorBlack);
ParmSCThreshold = Param("ScoreCard Threshold", 3, 1, 9, 1);
parmVoice = ParamToggle("Voice 123 Setups", "No|Yes", 0);
parmAlert = ParamToggle("Alert 123 Setups", "No|Yes", 0);
parmPivotPop = ParamToggle("PivotPop", "No|Yes", 1);
parmBarCancel = Param("Bar Cancel", 7, 1, 20, 1);
parmWaterLevelColor = ParamColor("WalterLevel Color", ColorRGB(127,255,212));
parmWaterLevelStyle = ParamStyle("WaterLevel Style", styleLine, maskAll);
parmBBPeriod = Param("Bollinger Band Period", 10, 2, 30, 1);
parmBBSD = Param("bollinger Band SD", 0.8, 0.2, 3.0);
ParmPlotPPIndicators = ParamToggle("Plot Pivot Pop indicators", "No|Yes", 0);
parmBBColor = ParamColor("BBands Color", colorBlack);
parmBBStyle = ParamStyle("BBands Style", styleLine, maskAll);

ParmDebug = ParamToggle("Debug", "No|Yes", 0);

// constants
_N(PaneName = Name() + Interval(2)+ _SECTION_NAME());
_N(NewBarName = "NewBar" + PaneName);

//functions
function NewBarP()
{
	PrevDT = StaticVarGet( NewBarName);
	DT = LastValue(DateTime());
	StaticVarSet( NewBarName,DT);
	return DT != PrevDT;
}
function MRoundP(Number, Multiple )
{
	if(Multiple == 0 )
	{

		xMultiple = 0.01;	}
	else
	{
	xMultiple = Multiple; 
	}
	Divided = Number / xMultiple;
	intDivided = int(Divided);
	intDivided = intDivided + round(Divided - intDivided);
	return intDivided * xMultiple;
}

//miscellaneous setups
ObjAB = CreateObject("Broker.Application");
ticker = objAB.Stocks(Name() );
if(ticker.TickSize == 0)
	{
		TickValue = 0.01;	//set TickValue to a penney
	}
else
	{
		TickValue = ticker.TickSize;	// use Tick Size for this symbol
	}
NewBarSignal = NewBarP();
//  KP Indicators
KPA900 = E_TSKPA900 (Close);
KPAutoStop = E_TSKPAUTOSTOP (High,Low,Close);
Ctmpl = E_TSKPCOLORTMPL(Open,High,Low,Close,Volume);	//ScoreCard
KPScoreCard = 0;
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd0 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd1 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd2 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd3 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd4 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd5 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd6 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd7 > 0, 1, -1); 
KPScoreCard = KPScoreCard  + IIf(tskp_colortmplcnd8 > 0, 1, -1); 

if(parmDebug == 1)
	{
		printf("a900: %0.6f% \nAutoStop: %0.6f%\nScoreCard: %0.0f%\n", KPA900, KPAutoStop, KPScoreCard);
	}
if(parmPlotScoreCard == 1)
	{
		_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g% (%0.4f%) {{VALUES}}", O, H, L, C, SelectedValue( C - Ref(C, -1)) ));
		if( ParamToggle("Tooltip shows", "All Values|Only Prices" ) )
		{
 			ToolTip=StrFormat("Open: %g\nHigh:  %g\nLow:   %g\nClose:  %g (%.2f%%)\nVolume: "+NumToStr( V, 1 ), O, H, L, C, SelectedValue( ROC( C, 1 )));
		}
		Color = IIf(KPScoreCard >= parmSCThreshold, colorBlue, IIf(KPScoreCard <= -parmSCThreshold, colorRed, colorYellow) );
		Plot( C, "Close", Color , styleNoTitle | ParamStyle("OHLC Style") | GetPriceStyle() ); 
	}
//user want A900/AutoStop plotted
if(parmPlotA900AutoStop == 1)
	{
		Plot(KPA900, "A900", parmA900Color, parmA900Style);
		Plot(KPAutoStop, "AutoStop", parmAutoStopColor, parmAutoStopStyle);
	}
// find A900/AutoStop cross over/under with ScoreCard confirmation.
XOUp = (KPA900 > KPAutoStop) AND (KPScoreCard >= parmSCThreshold);	// New Pivot Low
XODn = (KPA900< KPAutoStop) AND (KPScoreCard <= -parmSCThreshold); // New Pivot High
if(parmDebug == 1)
	{
		printf(WriteIf(XOUp, "before= XOUp: True", "before= XOUp: False") + WriteIf(XODn, " XODn: True\n", " XODn: False\n") );
	}
//remove duplicate signals
XOUp = ExRem(XOUp, XODn);
XODn = ExRem(XODn, XOUp);

if(parmDebug == 1)
	{
		printf(WriteIf(XOUp, "after= XOUp: True", "after= XOUp: False") + WriteIf(XODn, " XODn: True\n", " XODn: False\n") );
	}
//find the current Pivot Points - PL and PH
//remember XOUp = 1 means a PL and XODn =1 means a PH
PLBars = IIf(XOUp, LowestSinceBars(XODn, L ,1), 0);	//find the bar that produced the Lowest Low
PHBars = IIf(XODn, HighestSinceBars(XOUp, H, 1),0);	//find the bar that produced the Highest High
//PLPrice = IIf(XOUp, Ref(L, -PLBars), 0);
//PHPrice = IIf(XODn, Ref(H, -PHBars),0);
PLPrice =  Ref(L, -PLBars);
PHPrice =  Ref(H, -PHBars);

//keep track of the previous Pivot Points
PrevPLBars = Ref(BarsSince(XOUp), -1) +1;
PrevPHBars =  Ref(BarsSince(XODn), -1) +1;
PrevPLPrice =  Ref(PLPrice, -prevPLBars);
PrevPHPrice =  Ref(PHPrice, -PrevPHBars );
PivotsCloseEnough = TickValue * parmTickMultipler;
PLDifference = MroundP(PLPrice - PRevPLPrice, ticker.TickSize);
PHDifference = MroundP(PHPrice - PrevPHPrice, ticker.TickSize);
PPTrend = IIf(XOUp AND (PLDifference > PivotsCloseEnough) AND PrevPHPrice > PrevPLPrice AND PRevPHPrice > PLPrice, 1, 
				IIf(XOUp AND (PLDifference <  - PivotsCloseEnough) AND PRevPHPrice > PrevPLPrice AND PrevPHPrice > PLPrice, -1,
 				IIf(XODn AND (PHDifference > PivotsCloseEnough) AND PrevPLPrice < PrevPHprice AND PrevPLPrice < PHPrice, 1,
				IIf(XODn AND (PHDifference < -PivotsCloseEnough) AND PrevPLPrice < PrevPHPrice AND PrevPLPrice < PHPrice, -1,
 				IIf(XOUp AND (abs(PLDifference) <= PivotsCloseEnough) AND PrevPHPrice > PrevPLPrice AND PRevPHPrice > PLPrice, 2,
				IIf(XODn AND (abs(PHDifference) <= PivotsCloseEnough) AND PrevPLPrice < PrevPHPrice AND PrevPLPrice < PHPrice, -2, 0)))) ));
if(ParmDebug)
	{
		printf("Current PH Bar: %g% /Price: %g%\n", PHBars, PHPrice);
		printf("Current PL Bar: %g% /Price: %g%\n", PLBars, PLPrice);
		printf("Previous PH Bar: %g% /Price: %g%\n", PrevPHBars, PrevPHPrice);
		printf("Previous PL Bar: %g% /Price: %g%\n", PrevPLBars, PrevPLPrice) ;
		printf("PP Trend: %g%\n", PPTrend);
		printf("PHPrice - PrevPHPrice: %g%\nPLPrice - PrevPLPrice: %g%\nPivotsCloseEnough: %g%", PHDifference, PLDifference, PivotsCloseEnough);
	}
//PLot pivots as  text
dist = parmPPTextOffSet * ATR(10);
//for( i = 0; i < BarCount -1; i++)
for( i = 0; i < BarCount ; i++)
	{
		if(XOUp[i ] == 1 AND abs(PPTrend[i]) != 2)	//cross up -plot the Pivot Low
			{
				PlotText("PL", i - PLBars[i], PLPrice[i] - dist[i] , parmPPTextColor, IIf(PPTrend[i] == 1, parmPPTrndColorUp, IIf(PPTrend[i] == -1, parmPPTrndColorDn, colorYellow) ));
			}
		if(XODn[i ] == 1 AND abs(PPTrend[i]) != 2)	//cross down - plot the pivot high
			{
				PlotText("PH", i - PHBars[i], PHPrice[i] + dist[i], parmPPTextColor, IIf(PPTrend[i] == 1, parmPPTrndColorUp, IIf(PPTrend[i] == -1, parmPPTrndColorDn, colorYellow) ));
			}
		if(XOUp[i ] == 1 AND (PPTrend[i]) == 2)	// the Pivot Low is a W Bottom
			{
				PlotText("PW", i - PLBars[i], PLPrice[i] - dist[i] , parmPPTextColor,  colorYellow) ;
			}
		if(XODn[i ] == 1 AND PPTrend[i] == -2)	//cross down -  pivot high is a M Top
			{
				PlotText("PM", i - PHBars[i], PHPrice[i] + dist[i], parmPPTextColor,  colorYellow) ;
			}
	}	//end For
// Plot A900/AutoStop cross over/under
if(parmA900AutoStopX == 1)
	{
		PlotShapes(IIf(Cross(KPA900, KPAutoStop), shapeUpTriangle, shapeNone), parmA900AutoStopColorX, 0, L, -30);
		PlotShapes(IIf(Cross(KPAutoStop, KPA900), shapeDownTriangle, shapeNone), parmA900AutoStopColorX, 0, H , -30);
	}
//PHLine = LineArray(BarCount - LastValue(PHBars) -3, LastValue(PHPrice), BarCount - LastValue(PHBars) +2, LastValue(PHPrice), 0);
//Plot(PHLine, "PH", colorBlack, styleLine);
//PLLine = LineArray(BarCount - LastValue(PLBars) -3, LastValue(PLPrice), BarCount - LastValue(PLBars) +2, LastValue(PLPrice), 0);
//Plot(PLLine, "PL", colorBlack, styleLine);
// identify M, lazy M, W and Lazy W formations
//Pivot Pop code
if(parmPivotPop == 1)
	{
		//Kp indicators for Pivot Pop
		dummy = E_TSKPFAST2(Open, High, Low, Close, Volume);
		KPFast2 = IIf(tskp_fast2val1 > 0, 1, -1);
		//calculations
		BarsSinceXOUp =BarsSince(XOUp);
		BarsSinceXODn = BarsSince(XODn);
		UBB = BBandTop(C, parmBBPeriod, parmBBSD);
		LBB = BBandBot(C, parmBBPeriod, parmBBSD);
		PopFilter = True;
		if(parmDebug == 1)
			{
				printf("\nFast2: %1.0f% \nUBB: %0.6f%\nLBB: %0.6f%\nC: %g%\n", KPFast2, UBB, LBB, C);
				printf("Bars since Last XOUp: %1.0f%\nBars since last XODn: %1.0f%\n", BarsSinceXOUp, BarsSinceXODn );
				printf("Bars since PPTrnd =1: %1.0f%\nBars since PPTrnd = -1: %1.0f%\n", BarsSince(PPTrend ==1), BarsSince(PPTrend == -1) );	
				
		}
		PPopUp = (BarsSince(PPTrend >= 1) < BarsSince(PPTrend <= -1)) AND (BarsSince(XOUp) <= parmBarCancel) AND (KPA900 >= KPAutoStop) AND(KPFast2 == 1) AND (KPScoreCard >= 5)
				 AND PopFilter AND (C > UBB) AND (C > O) ;
		PPopUp = IIf( PPopUp AND Sum(PPopUP, BarsSince(XOUp)+1) == 1, True, False );	//keep only the 1st signal
		PPopDn = (BarsSince(PPTrend <= -1) < BarsSince(PPTrend >= 1)) AND (BarsSince(XODn) <= parmBarCancel) AND (KPA900 <= KPAutoStop) AND(KPFast2 == -1) AND (KPScoreCard <= -5)
				 AND PopFilter AND (C < LBB) AND (C < O) ;
		PPopDn = IIf( PPopDn AND Sum(PPopDn, BarsSince(XODn) + 1) == 1, True, False);	//keep only the first signal
		if(parmDebug == 1)
			{
				printf(WriteIf(PPopUp,"PPopUp: True", "PPopUp: False") + WriteIf(PPopDn, " PPopDn: True\n", " PPopDn: False\n") );
				printf("PPopUp sum: %1.0f% \nPPopDn sum: %1.0f%\n", Sum(PPopUP, BarsSince(XOUp)) , Sum(PPopDn, BarsSince(XODn)) );
			}
		// Plots
		PlotShapes(IIf(PPopUp, shapeHollowUpArrow, shapeNone), colorDarkBlue, 0, L, -25);
		PlotShapes(IIf(PPopDn, shapeHollowDownArrow, shapeNone), colorDarkRed, 0, H, -25);
		
		if(ParmPlotPPIndicators == 1)	//plot the Pivot Pop Indicators
			{
				Plot(UBB, "Upper BB", parmBBColor, parmBBStyle);
				Plot(LBB, "Lower BB", parmBBColor, parmBBStyle);
				if(parmPlotA900AutoStop == 1)
					{
						Plot(KPA900, "A900", parmA900Color, parmA900Style);
						Plot(KPAutoStop, "AutoStop", parmAutoStopColor, parmAutoStopStyle);
					}
				Plot( 0.5, "Fast2", IIf(tskp_fast2val1 > 0, parmPPTrndColorUp, parmPPTrndColorDn) , styleArea |  styleNoLabel | styleOwnScale , 0, 10);
			}	//endif parmPlotPPIndicators
	}	// end if parmPivotPop
// Type 1, 2 or 3 setups
// kp indicators
KPWaterlevel = E_TSKPWATERLEVEL(Open,High,Low,Close,Volume);
dummy = E_TSKPMEDIUM(Close);		
KPMediumUp = tskp_mediumup;
KPMediumDn = tskp_mediumdown;
KPMediumMA = tskp_mediumma;
KPMedium = KPMediumUp + KPMediumDn;
//calculations
PLBars = IIf(XOUp, LowestSince(XODn, KPMedium ,1), 0);	//find the  Lowest Low
PHBars = IIf(XODn, HighestSinceBars(XOUp, KPMedium, 1),0);	//find the bar that produced the Highest High
PrevPLMedium =  Ref(KPMedium, -prevPLBars);
PrevPHMedium =  Ref(KPMEdium, -PrevPHBars );

Type1Filter = IIf(PPopUp AND (LowestSince(XODn, KPMedium, 1) > 0 ) AND (HighestSince(XODn, KPMedium, 1) > 0 ), True, IIf(PPopDn AND (HighestSince(XOUp, KPMedium ,1) < 0) AND (LowestSince(XOUp, KPMedium ,1) < 0), True, False));
Type2Filter = IIf(PPopUp AND LowestSince(XODn, KPMedium, 1) < 0 AND KPMedium > 0, True, IIf(PPopDn  AND (HighestSince(XOUp, KPMedium ,1) > 0) AND KPMEdium < 0, True, False));
Type3Filter = IIf(PPopUp AND LowestSince(XODn, KPMedium, 1) < 0 AND KPMedium < 0 AND (KPMedium > KPMediumMA), True, IIf(PPopDn AND  (HighestSince(XOUp, KPMedium ,1) > 0) AND KPMEdium > 0  AND(KPMedium < KPMediumMA), True, False));

Type1Buy = 	PPopUp AND ((Close - Open) >= 0) AND (KPScoreCard >= ParmSCThreshold) AND Type1Filter;
Type1Sell = PPopDn AND ((Close - Open) <= 0) AND (KPScoreCard <= -ParmSCThreshold) AND Type1Filter;
Type2Buy = 	PPopUp AND ((Close - Open) >= 0) AND (KPScoreCard >= ParmSCThreshold) AND Type2Filter AND C > KPWaterLevel;
Type2Sell = PPopDn AND ((Close - Open) <= 0) AND (KPScoreCard <= -ParmSCThreshold) AND Type2Filter AND C < KPWaterLevel;
Type3Buy = 	PPopUp AND ((Close - Open) >= 0) AND (KPScoreCard >= ParmSCThreshold) AND Type3Filter AND C > KPWaterLevel;
Type3Sell = PPopDn AND ((Close - Open) <= 0) AND (KPScoreCard <= -ParmSCThreshold) AND Type3Filter AND C < KPWaterLevel;


if(parmDebug == 1)
	{
		printf("Type1Filter: %g%\nType2Filter: %g%\nType3Filter: %g%\n", Type1Filter, Type2Filter, Type3Filter);
		printf("KPWaterlevel: %g%\n",  KPWaterLevel);
		printf("KPMedium: %g%\nKPMediumMA: %g%\n", KPMedium, KPMediumMA);
		printf("Highest XOUp Medium: %g%\nLowest XOUp Medium: %g%\n", HighestSince(XOUp, KPMedium, 1), LowestSince(XOUp, KPMedium ,1) );
		printf("Highest XODn Medium: %g%\nLowest XODn Medium: %g%\n", HighestSince(XODn, KPMedium, 1), LowestSince(XODn, KPMedium ,1) );
		printf("Prev PH Medium: %g%:Prev PL Medium: %g%\n", PrevPHMedium, PrevPLMedium);
		printf("Type1Buy: %g%:Type1Sell: %g%\n", Type1Buy, Type1Sell);
		printf("Type2Buy: %g%:Type2Sell: %g%\n", Type2Buy, Type2Sell);
		printf("Type3Buy: %g%:Type3Sell: %g%\n", Type3Buy, Type3Sell);
	}
		
// Plots
PlotShapes(IIf(Type1Buy, shapeDigit1 , IIf(Type1Sell, shapeDigit1, shapeNone)), IIf(Type1Buy, colorBlue, IIf(Type1Sell, colorRed, Null)), 0, IIf(Type1Buy, High, IIf(Type1Sell, L, O)), IIf(Type1Buy, 30, IIf(Type1Sell, -30, 0)) );
PlotShapes(IIf(Type2Buy, shapeDigit2 , IIf(Type2Sell, shapeDigit2, shapeNone)), IIf(Type2Buy, colorBlue, IIf(Type2Sell, colorRed, Null)), 0, IIf(Type2Buy, High, IIf(Type2Sell, L, O)), IIf(Type2Buy, 30, IIf(Type2Sell, -30, 0)) );
PlotShapes(IIf(Type3Buy, shapeDigit3 , IIf(Type3Sell, shapeDigit3, shapeNone)), IIf(Type3Buy, colorBlue, IIf(Type3Sell, colorRed, Null)), 0, IIf(Type3Buy, High, IIf(Type3Sell, L, O)), IIf(Type3Buy, 30, IIf(Type3Sell, -30, 0)) );

Plot(KPWaterLevel, "KPWaterLevel", parmWaterLevelColor, parmWaterLevelStyle);
// HMM how to print Medium on a price chart

//voice
if(parmVoice ==1)
	{
		if(NewBarSignal)
		{
			if( LastValue(Ref(Type1Buy, -1)) == 1)  Say(Interval(2) + " New Type one buy.");
			if( LastValue(Ref(Type2Buy, -1)) == 1)  Say(Interval(2) + " New Type two buy");
			if( LastValue(Ref(Type3Buy, -1)) == 1)  Say(Interval(2) + " New Type three buy.");

			if( LastValue(Ref(Type1Sell,-1))  ==1)  Say(Interval(2) + " New Type one sell.");
			if( LastValue(Ref(Type2Sell,-1))  ==1)  Say(Interval(2) + " New Type two sell.");
			if( LastValue(Ref(Type3Sell,-1))  ==1)  Say(Interval(2) + " New Type three sell.");
		}
	}
//alerts
if(parmAlert ==1)
	{
		AlertIf(NewbarSignal AND Ref(Type1Buy, -1), "", "Type 1 Buy.", 1, 15, 0);
		AlertIf(NewbarSignal AND Ref(Type2Buy, -1), "", "Type 2 Buy.", 1, 15, 0);
		AlertIf(NewbarSignal AND Ref(Type3Buy, -1), "", "Type 3 Buy.", 1, 15, 0);
		AlertIf(NewbarSignal AND Ref(Type1Sell, -1), "", "Type 1 Sell.", 2, 15, 0);
		AlertIf(NewbarSignal AND Ref(Type2Sell, -1), "", "Type 2 Sell.", 2, 15, 0);
		AlertIf(NewbarSignal AND Ref(Type3Sell, -1), "", "Type 3 Sell.", 2, 15, 0);
	}



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

**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to 
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/