วันศุกร์ที่ 22 พฤศจิกายน พ.ศ. 2556

+++ Fibonacci Internal & External Retracements for Amibroker

/* Fibonacci Internal & External Retracements */
// This is a Modified Version that shows Fibonacci 00% & 100% instead of WRONG Sup & Res

_SECTION_BEGIN("Background");
    SetChartOptions(0,chartShowArrows|chartShowDates);
    SetChartBkColor(ParamColor("Outer panel",colorBlack)); // color of outer border
    SetChartBkGradientFill( ParamColor("Inner panel upper",colorBlack),ParamColor("Inner panel lower",colorBlack));
    tchoice=Param("Title Selection ",2,1,2,1);

Plot(C, "", IIf(O>=C, colorRed, colorGreen), ParamStyle("Price Style",styleBar,maskPrice));
//////////////////////////////////////////////////////////////////
_SECTION_BEGIN("Fib Retracements");
    fibs = ParamToggle("Plot Fibs","Off|On",1);
    pctH = Param ("Pivot Hi %", 0.325,0.001,2.0,0.002);
    HiLB = Param ("Hi LookBack",1,1,BarCount-1,1);
    pctL = Param ("Pivot Lo %", 0.325,0.001,2.0,0.002);
    LoLB = Param ("Lo LookBack",1,1,BarCount-1,1);
    Back = Param ("Extend Left = 2",1,1,500,1);
    Fwd  = Param("Plot Forward", 0, 0, 500, 1);
    text = ParamToggle("Plot Text","Off|On",1);
    hts  = Param ("Text Shift", -33.5,-50,50,0.10);
    style =ParamStyle("Line Style",styleLine,styleNoLabel);
x = BarIndex();
pRp  = PeakBars( H, pctH, 1) == 0;
yRp0 = SelectedValue(ValueWhen( pRp, H, HiLB));
xRp0 = SelectedValue(ValueWhen( pRp, x, HiLB));
pSp  = TroughBars( L, pctL, 1) == 0;
ySp0 = SelectedValue(ValueWhen( pSp, L, LoLB));
xSp0 = SelectedValue(ValueWhen( pSp, x, LoLB));
Delta = yRp0 - ySp0;

function fib(ret)
{
retval = (Delta * ret);
Fibval = IIf(ret < 1.0
AND xSp0 < xRp0, yRp0 - retval, IIf(ret < 1.0
AND xSp0 > xRp0, ySp0 + retval,IIf(ret > 1.0
AND xSp0 < xRp0, yRp0 - retval, IIf(ret > 1.0
AND xSp0 > xRp0, ySp0 + retval, Null))));
return FibVal;
}

x0 = Min(xSp0,xRp0)-Back;
x1 = (BarCount -1);
//////////////////////////////////////////////////////////////////
r236 = fib(0.236);  r236I = LastValue (r236,1);
r382 = fib(0.382);  r382I = LastValue (r382,1);
r050 = fib(0.50);       r050I = LastValue (r050,1);
r618 = fib(0.618);  r618I = LastValue (r618,1);
r786 = fib(0.786);  r786I = LastValue (r786,1);
e127 = fib(1.27);       e127I = LastValue (e127,1);
e162 = fib(1.62);       e162I = LastValue (e162,1);
e200 = fib(2.00);       e200I = LastValue (e200,1);
e262 = fib(2.62);       e262I = LastValue (e262,1);
e424 = fib(4.24);       e424I = LastValue (e424,1);
//////////////////////////////////////////////////////////////////
p00 = IIf(xSp0 > xRp0,ySp0,yRp0);    p00I = LastValue (p00,1);
p100 = IIf(xSp0 < xRp0,ySp0,yRp0);   p100I = LastValue (p100,1);
color00 =IIf(xSp0 > xRp0,colorLime,colorRed);
color100 =IIf(xSp0 < xRp0,colorLime,colorRed);
//////////////////////////////////////////////////////////////////
numbars = LastValue(Cum(Status("barvisible")));
fraction= IIf(StrRight(Name(),3) == "", 3.2, 3.2);
//////////////////////////////////////////////////////////////////
if(fibs==1)
{
Plot(LineArray(xRp0-Fwd,yRp0,x1,yRp0,Back),"PR",32,8|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(xSp0-Fwd,ySp0,x1,ySp0,Back),"PS",27,8|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,r236,x1,r236,Back),"",45,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,r382,x1,r382,Back),"",44,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,r050,x1,r050,Back),"",41,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,r618,x1,r618,Back),"",43,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,r786,x1,r786,Back),"",42,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,e127,x1,e127,Back),"e127",47,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,e162,x1,e162,Back),"e162",47,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,e200,x1,e200,Back),"p200",47,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,e262,x1,e262,Back),"p262",47,style|styleNoRescale,Null,
Null,Fwd);
Plot(LineArray(x0-Fwd,e424,x1,e424,Back),"p424",25,style|styleNoRescale,Null,
Null,Fwd);
}
//////////////////////////////////////////////////////////////////
if(text==1)
{
PlotText(" 0% = " + WriteVal(p00,fraction),
    LastValue(BarIndex())-(numbars/hts), p00I  + 0.05, color00);
PlotText("23% = " + WriteVal(r236,fraction),
LastValue(BarIndex())-(numbars/hts), r236I + 0.05, 45);
PlotText("38% = " + WriteVal(r382,fraction),
LastValue(BarIndex())-(numbars/hts), r382I + 0.05, 44);
PlotText("50% = " + WriteVal(r050,fraction),
LastValue(BarIndex())-(numbars/hts), r050I + 0.05, 41);
PlotText("62% = " + WriteVal(r618,fraction),
LastValue(BarIndex())-(numbars/hts), r618I + 0.05, 43);
PlotText("78% = " + WriteVal(r786,fraction),
LastValue(BarIndex())-(numbars/hts), r786I + 0.05, 42);
PlotText("100% = " + WriteVal(p100,fraction),
LastValue(BarIndex())-(numbars/hts),p100I + 0.05, color100);
PlotText("127% = " + WriteVal(e127,fraction),
LastValue(BarIndex())-(numbars/hts),e127I + 0.05, 47);
PlotText("162% = " + WriteVal(e162,fraction),
LastValue(BarIndex())-(numbars/hts),e162I + 0.05, 47);
PlotText("200% = " + WriteVal(e200,fraction),
LastValue(BarIndex())-(numbars/hts),e200I + 0.05, 47);
PlotText("262% = " + WriteVal(e262,fraction),
LastValue(BarIndex())-(numbars/hts),e262I + 0.05, 47);
PlotText("424% = " + WriteVal(e424,fraction),
LastValue(BarIndex())-(numbars/hts),e424I + 0.05, 25);
}
_SECTION_END();
//////////////////////////////////////////////////////////////////
if (tchoice==1 )
{
_N(Title = EncodeColor(colorWhite)+StrFormat(" {{NAME}} -   {{INTERVAL}}    
{{Date}}    Open:  %g,    High:  %g,     Low:  %g,     Close:  %g  
{{VALUES}}",O, H, L, C, SelectedValue( ROC( C, 1   ) ) ));
}
//////////////////////////////////////////////////////////////////
if (tchoice==2 )
{
Title = EncodeColor(colorYellow) + "Fibonacci Internal & External Retracements  " +  EncodeColor(colorWhite) + Name() + "  " + EncodeColor(colorWhite)+  Date() + "   Tick = " + EncodeColor(5) +
Interval()+
EncodeColor(colorWhite) + "     Open = " + EncodeColor(colorWhite) + O +
EncodeColor(colorWhite) + "     High = " + EncodeColor(5) + H +
EncodeColor(colorWhite) + "      Low = " + EncodeColor(colorRed) + L +
EncodeColor(colorWhite) + "     Close = " + EncodeColor(colorWhite) + C + "\n"
+
EncodeColor( colorWhite) +"_______________"+"\n"+
EncodeColor( colorWhite)  + "424%   =  "    +   EncodeColor(25)+ e424 + " " +"\n"+
EncodeColor( colorWhite)  + "262%   =  "    +   EncodeColor(47)+ e262 + " " +"\n"+
EncodeColor( colorWhite)  + "200%   =  "    +   EncodeColor(47)+ e200 + " " +"\n"+
EncodeColor( colorWhite)  + "162%   =  "    +   EncodeColor(47)+ e162 + " " +"\n"+
EncodeColor( colorWhite)  + "127%   =  "    +   EncodeColor(47)+ e127 + " " +"\n"+
EncodeColor( Color100)  + "100%   =  "  + EncodeColor(Color100) + p100 + " "+"\n"+
EncodeColor( colorWhite)  + "78.6%  =  "    +   EncodeColor(42)+ r786 + " " +"\n"+
EncodeColor( colorWhite)  + "61.8%  =  "    +   EncodeColor(43)+ r618 + " "+"\n"+
EncodeColor( colorWhite)  + "50%     =  "   +   EncodeColor(41)+ r050 + " "+"\n"+
EncodeColor( colorWhite)  + "38.2%  =  "    +   EncodeColor(44)+ r382 + " "+"\n"+
EncodeColor( colorWhite)  + "23.6%  =  "    +   EncodeColor(45)+ r236+ " " +"\n"+
EncodeColor( Color00)  + "00%    =  " +     EncodeColor(Color00) + p00 + " " ;
}
GraphXSpace=5;

+++ CyberMan's Linear Regression Channel. Amibroker Formula

_SECTION_BEGIN("Trend Lines");
p1 = Param("TL 1 Periods", 20, 5, 50, 1);
p2 = Param("TL 2 Periods", 5, 3, 25, 1);
TL1 = LinearReg(C, p1);
TL2 = EMA(TL1, p2);
Col1 = IIf(TL1 > TL2, ParamColor("TL Up Colour", colorGreen), ParamColor("TL Dn Colour", colorRed));
Plot(TL1, "TriggerLine 1", Col1, styleLine|styleThick|styleNoLabel);
Plot(TL2, "TriggerLine 2", Col1, styleLine|styleThick|styleNoLabel);
_SECTION_END();

_SECTION_BEGIN("Linear Regression Channel");
//CyberMan's Linear Regression Channel.

//Linear Regression Line with 2 Standard Deviation Channels Plotted Above and Below
//The original was written by Patrick Hargus, with critical hints from Marcin Gorzynski, Amibroker.com Technical Support
//Wysiwyg coded the angle in degrees part
//I modified the original Linear Regression code so that the line will change color based on the degree of the Linear Regression slope.
//I combine this with my trading system.
//When my system gives an entry signal I look at the Linear Regression Line and I will only take long positions if the Linear Regression line is green and the entry price is below the LR line.
//When my system gives an entry signal I look at the Linear Regression Line and I will only take short positions if the Linear Regression line is red and the entry price is above the LR line.
//It is usefull for filtering out lower probability trades.


//================================================Start Chart Configuration============================================================================

SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) Vol " +WriteVal( V, 1.0 ) +" {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 )) ));
SetChartBkGradientFill(ParamColor("Top", colorTeal), ParamColor("Bottom", colorLightGrey), ParamColor("Title", colorTeal));
SetChartBkColor(colorTeal);


Plot( C, "Close", colorWhite, styleCandle, Zorder = 1);
SetChartOptions(0,chartShowArrows | chartShowDates);

//================================================End Chart Configuration===============================================================================


//====================================Start of Linear Regression Code==================================================================================

P = ParamField("Price field",-1);

Length = 150;

Daysback = Param("Period for Liner Regression Line",Length,1,240,1);
shift = Param("Look back period",0,0,240,1);

//=============================== Math Formula ========================================================================================================

x = Cum(1);
lastx = LastValue( x ) - shift;
aa = LastValue( Ref(LinRegIntercept( p, Daysback), -shift) );
bb = LastValue( Ref(LinRegSlope( p, Daysback ), -shift) );
y = Aa + bb * ( x - (Lastx - DaysBack +1 ) );

//==================Plot the Linear Regression Line ====================================================================================================

LRColor = ParamColor("LR Color", colorCycle );
LRStyle = ParamStyle("LR Style");

LRLine =  IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y, Null );

LRStyle = ParamStyle("LR Style");
Angle = Param("Angle", 0.05, 0, 1.5, 0.01);// A slope higher than 0.05 radians will turn green, less than -0.05 will turn red and anything in between will be white.

LRLine = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y, Null );

Pi = 3.14159265 * atan(1); // Pi
SlopeAngle = atan(bb)*(180/Pi);

LineUp = SlopeAngle > Angle;
LineDn = SlopeAngle < - Angle;

if(LineUp)
{
Plot(LRLine, "Lin. Reg. Line Up", IIf(LineUp, colorBrightGreen, colorWhite), LRStyle);
}
else
{
Plot(LRLine, "Lin. Reg. Line Down", IIf(LineDn, colorDarkRed, colorWhite), LRStyle);
}

//==========================  Plot 1st SD Channel ======================================================================================================

SDP = Param("Standard Deviation", 1.5, 0, 6, 0.1);
SD = SDP/2;

width = LastValue( Ref(SD*StDev(p, Daysback),-shift) ); //Set width of inside chanels here.
SDU = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y+width , Null ) ;
SDL = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y-width , Null ) ;

SDColor = ParamColor("SD Color", colorCycle );
SDStyle = ParamStyle("SD Style");

Plot( SDU , "Upper Lin Reg", colorWhite,SDStyle ); //Inside Regression Lines
Plot( SDL , "Lower Lin Reg", colorWhite,SDStyle ); //Inside Regression Lines

//==========================  Plot 2d SD Channel ========================================================================================================

SDP2 = Param("2d Standard Deviation", 2.0, 0, 6, 0.1);
SD2 = SDP2/2;

width2 = LastValue( Ref(SD2*StDev(p, Daysback),-shift) ); //Set width of outside chanels here.
SDU2 = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y+width2 , Null ) ;
SDL2 = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y-width2 , Null ) ;

SDColor2 = ParamColor("2 SD Color", colorCycle );
SDStyle2 = ParamStyle("2 SD Style");

Plot( SDU2 , "Upper Lin Reg", colorWhite,SDStyle2 ); //OutSide Regression Lines
Plot( SDL2 , "Lower Lin Reg", colorWhite,SDStyle2 ); //OutSide Regression Lines

Trend = IIf(LRLine > Ref(LRLine,-1),colorGreen,colorRed);//Changes LR line to green if sloping up and red if sloping down.

Plot( LRLine , "LinReg", Trend, LRSTYLE );

วันพฤหัสบดีที่ 21 พฤศจิกายน พ.ศ. 2556

+++ สรุปผลการ Optimize Single Stock Nov 2013 ได้ค่ามา 3 TF


รายชื่อหุ้นที่น่าสนใจ และจัดเข้า Wish List ของ Single Stock
สรุปแล้ว เอา 30/60/120/240 ไปสร้าง กราฟ





วันเสาร์ที่ 16 พฤศจิกายน พ.ศ. 2556

+++ ผลการ Optimize S50xx ด้วย HeikenAshi+ATR Model Nov. 2013
















     สรุปผลการคัดเลือก สรุปว่า รอบนี้เลือก 10/60/Day ในการเทรด แต่ปัญหาของการ optmize รอบนี้คือเลือก Stock เข้ามาน้อยไป รอบใหม่ให้ทำการเลือก Serious ตั้งแต่ต้นปีมาเลย แต่ปัญหาอีกแนวคิดคือ บาง Series มันเล่นก่อนที่จะถึงรอบ อย่างตอนนี้เล่น Z แต่ก็มีคน เล่น H14 เข้ามาแล้ว ...เดะต้องหาวิธีคิด แต่รอบนี้เอาตัวนี้ไปลองก่อน 

+++ ผลการ Optimize คู่เงิน เดือน Nov 2013

     อันนี้เป็นแนวคิดส่วนตัว และคงต้องใช้เวลาทดสอบอีกสักพัก คือเวลาผมเจอ indicator ตัวไหน ดูง่าย ๆ ไม่ซับซ้อน หรือมองดูแล้วมีความแม่นยำ หรือน่าสนใจ ผมจะเอามาทำ EA ปรับ เอาสัญญาณ ซื้อ ขาย ใส่เพิ่มเข้าไป และตั้ง Ext ในโปรแกรม เพื่อให้มันสามารถ เอา EA ตัวนั้น มา Optimize เพื่อหาค่า Config ต่างๆ ที่เหมาะกับ ว่ามันเหมาะกับคู่เงินไหน time frame ไหน โดยการทำ optimize จะเน้นไปที่ตัว %Drawdown และ % Profit และจำนวนครั้งของการเทรด อาจจะมีตัว payoff  เข้ามาด้วย 

   เท่าที่ได้ทดลองมา พอจะสรุปคร่าวๆ ว่า indicator ต่าง ๆ ทำงานได้แตกต่างกันกับแต่ละคู่งเงินและแต่ละ time frame แต่ผลของการ optimize ก็ใช่ว่าจะบอกว่าอนาคตจะต้องเป็นแบบอดีต ทุกอย่างเปลี่ยนแปลงได้ เพียงแต่การทำแบบนี้ คือจับแนวโน้ม พฤติกรรมที่มีต่อเนื่อง โดยมองในเรื่อง history repeat itself concept เข้ามาประกอบด้วย

     ตอนทดสอบผมก็มีทำหลายแบบ เช่นเลือกช่วงเวลาแบบ 1 ปี หรือกว่านั้นมาก่อน แล้วก็ลดลงมาเป็น 6 เดือน แล้วก็เอาค่านั้นลองมาสุ่ม Back Test ว่าผลในแต่ละเดือนมีความใกล้เคียงหรือคลาดเคลื่อนแค่ไหน  และตอนนี้ก็เปิด Host VPS สำหรับใช้ในการที่จะปล่อย EA run และก็จะมีการเลือก ค่าที่ดี ๆ จาก EA แต่ละตัว และ TF ที่สนใจ เอาค่านั้นกลับมาใส่ Indicator เพื่อใช้เป็นตัวบอกสัญญาณ  และมีการเพิ่ม Alert และใส่ Function Playsound เข้าไป เพื่อให้มันแจ้งตอนเงื่อนไขมันตรง โดยตัวทำเสียงผมใช้ Google Translate ในการสร้างเสียงบอก เพราะวันปกติผมต้องเทรดอย่างอื่น จะได้ไม่เสียเวลานั่งเฝ้า....อีก 4-6 เดือนน่าจะพอสรุปผลการทดลองพวกนี้ได้ ....ตอนนี้ต้องลอง 














     อ้อ ลืมแชร์อีกเรื่อง การเทรด demo กับเงินจริงจะแตกต่างกันมาก ในเรื่องของการ match และการลาก order ถ้าถามความเห็นส่วนตัวผม เล่น demo เพื่อให้เข้าใจ ฝึก และวางกลยุทธ์ แบะเรื่อง money management แต่ถ้าจะแบบเข้าถึง ผมแนะนำว่า ให้ลองเปิดบัญชี cen เพื่อหัดเล่นจริง ซึ่งจะทำให้เราสัมผัสกับสภาพตลาดจริง ๆ ได้ดีกว่า demo ของบางที่เขาสร้าง และมีการปรับแต่งตัวโปรแกรม การเข้าออก เพื่อทำให้ผู้เล่น demo มีความรู้สึกว่าทำกำไรได้ง่าย ๆ แต่ความจริงแล้ว ยังมีไรอีกหลายอย่าง อย่างพวก ea นี้ผมไม่ใช้ demo run นะ ผมเปิด บัญชี cen run เลยแต่ตั้ง order .01 ก็เรียกว่าเอาแบบ แค่รู้ ทดสอบ ให้ชัวร์ โดยปกติผมจะเทรดมือเป็นหลัก ....

วันพฤหัสบดีที่ 14 พฤศจิกายน พ.ศ. 2556

+++ นอกจากความรู้ ประสบการณ์ "เครื่องมือ" คืออีกหนึ่งอาวุธที่สำคัญ สำหรับเทรดเดอร์

      ผมให้ความสำคัญกับเครื่องทือที่ใช้นำมาเทรดมากพอสมควร เพราะมันคือ ประตูทางเข้าของข้อมูลต่าง ๆ ที่จะไหลเข้ามาในสมองเรา แต่มันจะต้องสอดคล้อง และช่วยในการตัดสินใจของเรา เยอะหรือเปล่า น้อยไปหรือเปล่า ไม่มีใครตอบได้ เท่าตัวเรา เราจะรู้ด้วยตัวเราเองว่า ข้อมูลที่เข้ามาช่วยในการตัดสินใจของเราทำให้ port เราโตขึ้นหรือเปล่า

     นี่คือหน้าจอที่ใช้เทรดตอนนี้ ณ. 14-Nov-2013 เป็นหน้าจอที่ใช้เทรด TFEX, Single Stock + FOREX ในหน้าจอเดียวทั้งหมด

วันอังคารที่ 5 พฤศจิกายน พ.ศ. 2556

++++ ความหมายของรายงาน (Report) ใน MT4 FOREX


  • Total net profit หมายถึง ผลสรุปรายการซื้อขายที่เกิดขึ้น ซึ่งแสดงส่วนของ “Gross profit” และ Gross loss”
  • Gross profit หมายถึงผลสรุปกำไรที่ได้จากการเทรด โดยแสดงในรูปของจำนวนเงิน
  • Gross loss หมายถึงผลสรุปขาดทุนจากการเทรด โดยแสดงในรูปของจำนวนเงิน
  • Profit factor หมายถึงอัตราส่วนของผลกำไรขาดทุน แสดงเป็นเปอร์เซ็นต์
  • Expected payoff หมายถึง ค่าความคาดหวังที่คำนวณเป็นตัวเลข โดยอาจคำนวณจากผลของค่าเฉลี่ยของ Profit และ Loss factor ต่อการเทรดหนึ่งครั้ง ซึ่งจะแสดงให้เห็นกำไรขาดทุนที่เป็นไปได้ในการเทรดครั้งต่อไป
  • Absolute drawdown หมายถึง ผลขาดทุนที่มากที่สุดที่อยู่ต่ำกว่าเงิน deposit
  • Maximal drawdown หมายถึง ผลขาดทุนที่มากที่สุดของ local maximum ในเงินฝาก คิดเป็นเปอร์เซ็นต์
  • Total trades หมายถึง ผลรวมการเทรดทุก positions
  • Short position (won %) หมายถึง จำนวน short positions และ เปอร์เซ็นต์ของกำไร
  • Long positions (won %) หมายถึงจำนวนของ long positions และเปอร์เซ็นต์ของกำไร
  • Profit trades (% of total) หมายถึง ผลรวมของกำไรที่ได้จากการเทรดแต่ละ position แสดงเป็นเปอร์เซ็นต์
  • Loss trades (% of total ) หมายถึงผลรวมของขาดทุนที่เกิดขึ้นในแต่ละ positions แสดงเป็นเปอร์เซ็นต์
  • Largest profit trade หมายถึง จำนวนกำไรที่ได้สูงสุดจาก positions ทั้งหมดที่ทำกำไรได้
  • Largest loss trade หมายถึง ผลขาดทุนที่สูงสุดจาก positions ทั้งหมดที่ขาดทุนหรือไม่มีกำไร
  • Average profit trade หมายถึง ค่าเฉลี่ยของราคาภายในการเทรดแต่ละครั้ง (ยอดรวมของกำไรทั้งหมดหารด้วยการเทรดที่สามารถทำกำไรได้)
  • Average loss trade หมายถึง ค่าเฉลี่ยของราคาภายในการเทรดแต่ละครั้ง (ยอดรวมของผลขาดทุนทั้งหมดหารด้วยการเทรดทีี่ไม่สามารถทำกำไรได้)
  • Maximum consecutive wins (profit in money) หมายถึง จำนวนเงินที่สามารถทำกำไรได้อย่างต่อเนื่องในการเทรด position และผลรวมกำไรทั้งหมด
  • Maximum consecutive losses (loss in money) หมายถึง จำนวนเงินที่ขาดทุนต่อเนื่องกันในการเทรด positions และ ผลรวมขาดทุน
  • Maximal consecutive profit (count of wins) หมายถึง ผลกำไรที่ทำได้อย่างต่อเนื่องจนกว่าจะไม่สามารถทำกำไรได้หรือขาดทุน ซึ่งนับเป็นจำนวนครั้ง
  • Maximal consecutive loss (count of losses) หมายถึงผลของขาดทุนต่อเนื่องจนกระทั่งสามารถเทรดได้กำไร ซึ่่งนับเป็นจำนวนครั้ง
  • Average consecutive wins หมายถึง ค่าเฉลี่ยของกำไรที่ทำได้ต่อเนื่องจากการเทรด positions  
  • Average consecutive loss หมายถึง ค่าเฉลี่ยของขาดทุนที่ได้รับต่อเนื่องกันจากการเทรด positions