µ±Ç°Î»ÖãºÊ×Ò³ > EA±à³Ìʵѵ¿Î³Ì - ͼÎÄ
ÊäÈë²ÎÊý:
Êä³ö²ÎÊý:9-ÎÞÐźÅ
0- ÂòÈ뿪²ÖÐźŠ1- Âô³ö¿ª²ÖÐźŠ2- BuyLimitÐźŠ3- SellLimitÐźŠ4- BuyStopÐźŠ5- SellStopÐźŠ6- ÂòÈ뵥ƽ²ÖÐźŠ7- Âô³öµ¥Æ½²ÖÐźÅ
Ëã·¨: /*
Int iTradingSignals() {
Int myReturn=9;//Ô¤¶¨Òå·µ»Ø±äÁ¿
iDrawSign(¡°Dot¡±,0,Ask,Green,241);±ê×¢ÂòÈ뿪²ÖÐźŠiDrawSign(¡°Dot¡±,0,Bid,Red,242);//±ê×¢Âô³ö¿ª²ÖÐźŠreturn(myReturn); }
º¯Êý:ÏÔʾ½»Ò×ÐÅÏ¢ ÊäÈë²ÎÊý: Êä³ö²ÎÊý: Ëã ·¨: */
Void iShowInfo() {
//ͳ¼Æ³Ö²Öµ¥Êý¾Ý
BuyGroupOrders=0;SellGroupOrders=0;//ÂòÈë¡¢Âô³ö×é³É½»³Ö²Öµ¥ÊýÁ¿×ܼÆ
BuyGroupFirstTicket=0;SellGroupFirstTicket=0;//ÂòÈë¡¢Âô³ö×é³Ö²Öµ¥µÚ1Õŵ¥¶©µ¥ºÅ BuyGroupLastTicket=0;SellGroupLastTicket=0;//ÂòÈë¡¢Âô³ö×é×îºó1Õŵ¥µÄ¶©µ¥ºÅ BuyGroupLots=0;SellGroupLots=0;//ÂòÈë¡¢Âô³ö×é³É½»µ¥³Ö²ÖÁ¿ BuyGroupProfit=0;SellGroupProfit=0;//ÂòÈë¡¢Âô³ö×é³É½»µ¥ÀûÈó
BuyLimitOrders=0;SellLimitOrders=0;//ÂòÈë¡¢Âô³öÏÞÖÆ¹Òµ¥ÊýÁ¿×Ü¼Æ BuyStopOrders=0;SellStopOrders=0;//ÂòÈë¡¢Âô³öÍ£Ö¹¹Òµ¥ÊýÁ¿×Ü¼Æ If£¨OrdersTotal£¨£©>0£© {
ArrayResize(OrdersArray,OrdersTotal());//ÖØÐ½綨Êý×é ArrayInitialize(OredrsArray,0.0);//³õʼ»¯Êý×é For(cnt=0;cnt<=OrdersTotal()-1;cnt++) {
iWait();
//Ñ¡Öе±Ç°»õ±Ò¶ÔÏà¹Ø³Ö²Ö¶©µ¥
If(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES && OrderSymbol()==Symbol() && OrderComment()==MyOrderComment)
{
OrdersArray[cnt][0]=OrderOpenTime(); OrdersArray[cnt][1]=OrderTicket(); OrdersArray[cnt][2]=OrderType(); //ÂòÈë³Ö²Öµ¥
If(OrderType()==OP_BUY) {
BuyGroupOrders=BuyGroupOrders+1;//ÂòÈë×é¶©µ¥ÊýÁ¿ BuyGroupLots=BuyGroupLots+OrderLots();//ÂòÈë×鿪²ÖÁ¿ BuyGroupProfit=BuyGroupProfit+OrderProfit();//ÂòÈë×éÀûÈó
}
//Âô³ö³Ö²Öµ¥
If(OrderType()==OP_SELL) {
SellGroupOrders=SellGroupOrders+1;//Âô³ö×é¶©µ¥ÊýÁ¿ SellGroupLots=SellGroupLots+OrderLots();//Âô³ö×鿪²ÖÁ¿ sellGroupProfit=SellGroupprofit+OrderProfit();//Âô³ö×éÀûÈó
}
//Limit¹Òµ¥ÊýÁ¿
If(OrderType()==OP_BUYLIMIT)
BuyLimitOrders=BuyLimitOrders+1;
If(OrderType()==OP_SELLLIMIT)
SellLimitOrders=SellLimitOrders+1; //Stop¹Òµ¥ÊýÁ¿
If(OrderType()==OP_BUYSTOP) BuyLimitOrders=BuyStopOrders+1;
If(OrderType()==OP_SELLSTOP)
SellLimitOrders=SellStopOrders+1;
}) }
//ÖØÐ¶¨Òå³Ö²Öµ¥Êý×é±ß½ç Double myTempArray[][3]; Int
myTrallingOrders=BuyGroupOrders+SellGroupOrders+BuyLimitOrders+SellLimitOrders+BuyStopOrders+SellStopOrders; If (myTrallingOrders>0) {
ArrayResize(OrdersArray,myTrallingOrders);//ÖØÐ½綨Êý×é //ArrayInitialize(ordersArray,0.0);//³õʼ»¯Êý×é
ArrayResize(myTempArray,myTrallingOrders);//ÖØÐ½綨ÁÙʱÊý×é ArrayInitialize(myTempArray,0.0);//³õʼ»¯ÁÙʱÊý×é
}
//°´¶©µ¥¿ª²Öʱ¼ä½µÐòÅÅÁÐ,ÖØ×é¶©µ¥Êý×é-----ðÅÝÅÅÐò For(i=0;i For(j=myTrallingOrders-1;j>i;j--) { If(OrdersArray[j][0]>OrdersArray[j-1][0]) { myTempArray[0][0]=OrdersArray[j-1][0]; myTempArray[0][1]=OrdersArray[j-1][1]; myTempArray[0][2]=OrdersArray[j-1][2]; myTempArray[j-1][0]=OrdersArray[j][0]; myTempArray[j-1][1]=OrdersArray[j][1]; myTempArray[j-1][2]=OrdersArray[j][2]; myTempArray[j][0]=OrdersArray[0][0]; myTempArray[j][1]=OrdersArray[0][1]; myTempArray[j][2]=OrdersArray[0][2]; } } } //ÂòÈëÂô³ö×éµÚ1µ¥¡¢×îºó1µ¥±äÁ¿¸³Öµ For(cnt=0;cnt If(OrdersArray[cnt][2]==0) { BuyGroupLastTicket=StrToInteger(DoubleToStr(OrdersArray[cnt][1],0)); Break; } } For(cnt=0;cnt If(OrdersArray[cnt][2]==1) { SellGroupLastTicket=StrToInteger(DoubleToStr(OrdersArray[cnt][1],0)); Break; } } For(cnt=myTrallingOrders-1;cnt>=0;cnt--) { If(OrdersArray[cnt][2]==0) { BuyGroupFirstTicket=StrToInteger(DoubleToStr(OrdersArray[cnt][1],0)); Break; } } For(cnt=myTrallingOrders-1;cnt>=0;cnt--) { If(OrdersArray[cnt][2]==1) { SellGroupFirstTicket=StrtoInteger(DoubleToStr(OrdersArray[cnt][1],0)); Break; } } } //ÏÔʾ¶©µ¥ÐÅÏ¢ iDisplayInfo(Symbol()+¡±-BuyGroup¡±,¡±ÂòÈë×顱,1,70,70,12,¡±Arial¡±,Red); iDispalyInfo(Symbol()+¡±-Ask¡±,DoubleToStr(Ask,Digits),1,70,90,12,¡±Arial¡±,Red); iDispalyInfo(Symbol()+¡±-SellGroup¡±,¡±Âô³ö×顱,1,5,70,12,¡±Arial¡±,Green); iDisplayInfo(Symbol()+¡±-Bid¡±,DoubleToStr(Bid,Digit),1,5,90,12,¡±Arial¡±,Green); //ÏÔʾÂòÈë×éÐÅÏ¢ iDisplayInfo(Symbol()+¡±-BuyGroup¡±,¡±ÂòÈë×顱,1,70,70,12,¡±Arial¡±,Red); iDispalyInfo(Symbol()+¡±-Ask¡±,DoubleToStr(Ask,Digits),1,70,90,12,¡±Arial¡±,Red); iDispalyInfo(Symbol()+¡±BuyOrders¡±,BuyGroupOrders,1,80,110,10,¡±Arial¡±,iObjectColor(BuygroupProfit)); iDisplayInfo(Symbol()+¡±buyGroupLots¡±,DoubleToStr(BuyGroupLots,2),1,80,125,10,¡±Arial¡±,iObectColor(BuyGroupProfit)); iDisplayInfo(Symbol()+¡±buyGroupProfit¡±,DoubleToStr(BuyGroupProfit,2),1,80,140,10,¡±Arial¡±,iObectColor(BuyGroupProfit)); //ÏÔʾÂô³ö×éÐÅÏ¢ iDisplayInfo(Symbol()+¡±-SellGroup¡±,¡±Âô³ö×顱,1,5,70,12,¡±Arial¡±,Green); iDispalyInfo(Symbol()+¡±-Bid¡±,DoubleToStr(Bid,Digits),1,5,90,12,¡±Arial¡±,Green); iDispalyInfo(Symbol()+¡±SellOrders¡±,SellGroupOrders,1,10,110,10,¡±Arial¡±,iObjectColor(SellGroupProfit)); iDisplayInfo(Symbol()+¡±SellGroupLots¡±,DoubleToStr(SellGroupLots,2),1,10,125,10,¡±Arial¡±,iObectColor(SellGroupProfit)); iDisplayInfo(Symbol()+¡±SellGroupProfit¡±,DoubleToStr(SellGroupProfit,2),1,10,140,10,¡±Arial¡±,iObectColor(SellGroupProfit)); return(0); } /* º¯Êý:½»Ò×·±Ã¦,³ÌÐòµÈ´ý,¸üлº´æÊý¾Ý ÊäÈë²ÎÊý: Êä³ö²ÎÊý: Ë㷨˵Ã÷:
¹²·ÖÏí92ƪÏà¹ØÎĵµ