Price Data Components
Orders Execution
Indicators Used
0
Views
0
Downloads
0
Favorites
Profitability Reports
GBP/USD
Oct 2024 - Jan 2025
76.00 %
Total Trades
38
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-104.20
Gross Profit
12388.90
Gross Loss
-16348.60
Total Net Profit
-3959.70
-100%
-50%
0%
50%
100%
NZD/USD
Oct 2024 - Jan 2025
71.00 %
Total Trades
48
Won Trades
15
Lost trades
33
Win Rate
0.31 %
Expected payoff
-77.31
Gross Profit
8935.20
Gross Loss
-12646.10
Total Net Profit
-3710.90
-100%
-50%
0%
50%
100%
Chinese
//+----------------------------------------------------------------------------+
//| China.mq4 |
//| Copyright ?2008, ÀîÌï¾ü |
//| WEB:http://www.fx568.cn Call:13853162281 QQ:43372674 MAIL: infome@163.com |
//+----------------------------------------------------------------------------+
#property copyright "Copyright ?2008, ÀîÌï¾ü"
#property link "http://www.fx568.cn"
extern double MaximumRisk =0.5;
extern double DecreaseFactor =2;
extern int TrendSMA =21;
extern bool AddStopLoss =false;
string comment;
static double FPSMMA, myLips, myTheeth, myJaw,Lots;
int mytext=0;
int init() { return(0); }
int deinit() { return(0); }
int start()
{ int ticket,AlSignal,TrSignal,FrSignal,AcSignal,AoSignal,ClSignal;
comment ="ÀîÌï¾ü13853162281";
Lots =LotsOptimized();
AlSignal=FUNAlSignal();
TrSignal=FUNTrSignal();
FrSignal=FUNFrSignal();
AcSignal=FUNAcSignal();
AoSignal=FUNAoSignal();
ClSignal=FUNClSignal();
FPSMMA =iMA(Symbol(),0,5,1,MODE_SMMA,PRICE_WEIGHTED,0);
if(AlSignal==1 && FrSignal==1 && TrSignal==1 && AcSignal==1 && AoSignal==1 && OrdersTotal()<1)
{ ticket=OrderSend(Symbol(), OP_BUY,Lots,Ask,0,0,0,"¸ù¾Ý"+Period()+"·ÖÖÓ×ö¶à"+comment,0,0,Green); return(0); }
if(AlSignal==2 && FrSignal==2 && TrSignal==2 && AcSignal==2 && AoSignal==2 && OrdersTotal()<1)
{ ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,0,0,0,"¸ù¾Ý"+Period()+"·ÖÖÓ×ö¿Õ"+comment,0,0,Red ); return(0); }
if(OrdersTotal()>0 && AddStopLoss==true) ModifyStopLoss();
for(int num=0;num<OrdersTotal();num++)
{ OrderSelect(num, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol())
{ if(OrderType()==OP_BUY)
{ if(ClSignal==1) { OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); return(0); } }
else
{ if(ClSignal==2) { OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); return(0); } }
}
}
return(0);
}
void ModifyStopLoss()
{ for(int c=0;c<OrdersTotal();c++)
{ OrderSelect(c,SELECT_BY_POS,MODE_TRADES);
if(OrderSymbol()==Symbol())
{ if( OrderType()==OP_BUY && (OrderStopLoss()<myJaw || OrderStopLoss()==0))
{ OrderModify(OrderTicket(),OrderOpenPrice(),myJaw,0,0,Green); }
if( OrderType()==OP_SELL && (OrderStopLoss()>myJaw || OrderStopLoss()==0))
{ OrderModify(OrderTicket(),OrderOpenPrice(),myJaw,0,0,Red); }
}
}
}
double LotsOptimized()
{ double lot;
int orders=HistoryTotal();
int losses=0;
lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,1);
if(DecreaseFactor>0)
{ for(int i=orders-1;i>=0;i--)
{ if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false) { Print("Error in history!"); break; }
if(OrderSymbol()!=Symbol() || OrderType()>OP_SELL) continue;
if(OrderProfit()>0) break;
if(OrderProfit()<0) losses++;
}
if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
if(lot<0.1) lot=0.1;
return(lot);
}
int FUNClSignal()
{ int myClSignal=0;
if(FPSMMA<myLips-3*Point) myClSignal=1;
if(FPSMMA>myLips+3*Point) myClSignal=2;
return(myClSignal);
}
int FUNAlSignal()
{ int myAlSignal=0;
FPSMMA= iMA(Symbol(),0,5,1,MODE_SMMA,PRICE_WEIGHTED,0);
myLips= iAlligator(Symbol(),0,13,8,8,5,5,4,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,0);
myTheeth=iAlligator(Symbol(),0,13,8,8,5,5,4,MODE_SMMA,PRICE_MEDIAN,MODE_GATORTEETH,0);
myJaw= iAlligator(Symbol(),0,13,8,8,5,5,4,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,0);
if( FPSMMA>myLips && myLips>myTheeth && myTheeth>myJaw && iClose(0,0,1)>myTheeth )
{ myAlSignal=1; }
if( FPSMMA<myLips && myLips<myTheeth && myTheeth<myJaw && iClose(0,0,1)<myTheeth )
{ myAlSignal=2; }
return(myAlSignal);
}
int FUNTrSignal()
{ int myTrSignal=0;
double TPSMMA=TrendSMA;
double TrendSignal=iMA(Symbol(),0,TPSMMA,1,MODE_SMMA,PRICE_WEIGHTED,0);
if ( iClose(Symbol(),0,1)>iOpen(Symbol(),0,1) && iLow(Symbol(),0,1)>TrendSignal )
{ myTrSignal=1; }
if ( iClose(Symbol(),0,1)<iOpen(Symbol(),0,1) && iHigh(Symbol(),0,1)<TrendSignal )
{ myTrSignal=2; }
return(myTrSignal);
}
int FUNFrSignal()
{ double PreFrac_up,HLowest,HLower, PreFrac_down,LHighest,LHigher;
int i=0,PreFrac_upIndex,HLowestIndex,HLowerIndex,m=0,PreFrac_downIndex,LHighestIndex,LHigherIndex,myFrSignal;
double FrSMMA= iMA(Symbol(),0,5,1,MODE_SMMA,PRICE_WEIGHTED,0);
while(PreFrac_up==0)
{ PreFrac_up=iFractals(Symbol(),0,MODE_UPPER,i);
PreFrac_upIndex=i;
i++;
}
HLowestIndex=ArrayMinimum(High,PreFrac_upIndex,0);
HLowest =High[HLowestIndex];
HLower =High[HLowestIndex+1];
HLowerIndex =HLowestIndex+1;
while(PreFrac_down==0)
{ PreFrac_down=iFractals(Symbol(),0,MODE_LOWER,m);
PreFrac_downIndex=m;
m++;
}
LHighestIndex=ArrayMaximum(Low,PreFrac_downIndex,0);
LHighest =Low[LHighestIndex];
LHigher =Low[LHighestIndex+1];
LHigherIndex =LHighestIndex+1;
if(PreFrac_up>myTheeth && iClose(Symbol(),0,m-1)>myJaw && (iHigh(Symbol(),0,1)>HLower || iHigh(Symbol(),0,1)>PreFrac_up) )
{ myFrSignal=1; }
if(PreFrac_down<myTheeth && iClose(Symbol(),0,i-1)<myJaw && (iLow(Symbol(),0,1)<LHigher || iLow(Symbol(),0,1)<PreFrac_down) )
{ myFrSignal=2; }
return(myFrSignal);
}
int FUNAcSignal()
{ double AC1;
int myAcSignal;
AC1=iAC(Symbol(),0,1);
if(AC1>0) { myAcSignal=1; }
if(AC1<0) { myAcSignal=2; }
return(myAcSignal);
}
int FUNAoSignal()
{ double AO1;
int myAoSignal;
AO1=iAO(Symbol(),0,1);
if(AO1>0) { myAoSignal=1; }
if(AO1<0) { myAoSignal=2; }
return(myAoSignal);
}
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---