Orders Execution
Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
20.00 %
Total Trades
28
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-110.90
Gross Profit
798.93
Gross Loss
-3904.09
Total Net Profit
-3105.16
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
164.00 %
Total Trades
21
Won Trades
14
Lost trades
7
Win Rate
0.67 %
Expected payoff
14.78
Gross Profit
793.29
Gross Loss
-483.00
Total Net Profit
310.29
-100%
-50%
0%
50%
100%
MoneyRain
//+------------------------------------------------------------------+
//| MoneyRain.mq4 |
//| Copyright © 2008, Yury V. Reshetov |
//| http://bigforex.biz/load/2-1-0-172 |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, Yury V. Reshetov http://bigforex.biz/load/2-1-0-172"
#property link "http://bigforex.biz/load/2-1-0-172"
//---- input parameters
extern int p = 10;
extern double tp = 50;
extern double sl = 50;
extern double lots = 1;
extern int losseslimit = 1000000;
extern bool fastoptimize = true;
extern int mn = 888;
static int prevtime = 0;
static int losses = 0;
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
if (Time[0] == prevtime) return(0);
prevtime = Time[0];
if (! IsTradeAllowed()) {
prevtime = Time[1];
MathSrand(TimeCurrent());
Sleep(30000 + MathRand());
}
//----
int total = OrdersTotal();
for (int i = 0; i < total; i++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == mn) {
return(0);
}
}
int ticket = -1;
double lt = getLots();
if (losses >= losseslimit) {
SendMail(WindowExpertName() + " Too many losses", "Chart " + Symbol());
return(0);
}
if (iDeMarker(Symbol(), 0, p, 0) > 0.5) {
RefreshRates();
ticket = OrderSend(Symbol(), OP_BUY, lt, Ask, 1, Bid - sl * Point, Bid + tp * Point, WindowExpertName(), mn, 0, Blue);
if (ticket < 0) {
Sleep(30000);
prevtime = Time[1];
}
} else {
ticket = OrderSend(Symbol(), OP_SELL, lt, Bid, 1, Ask + sl * Point, Ask - tp * Point, WindowExpertName(), mn, 0, Red);
RefreshRates();
if (ticket < 0) {
Sleep(30000);
prevtime = Time[1];
}
}
//-- Exit --
return(0);
}
//+--------------------------- getLots ----------------------------------+
double getLots() {
if (IsOptimization() && fastoptimize) {
return(lots);
}
losses = 0;
int profits = 0;
double lossesvolume = 0;
double minlot = MarketInfo(Symbol(), MODE_MINLOT);
int round = MathAbs(MathLog(minlot) / MathLog(10.0)) + 0.5;
double result = lots;
int total = OrdersHistoryTotal();
double spread = MarketInfo(Symbol(), MODE_SPREAD);
for (int i = 0; i < total; i++) {
OrderSelect(i, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderMagicNumber() == mn) {
if (OrderProfit() > 0) {
if (lossesvolume > 0.5 && profits < 1) {
result = lots * lossesvolume * (sl + spread) / (tp - spread);
} else {
result = lots;
}
losses = 0;
if (profits > 1) {
lossesvolume = 0;
}
profits++;
} else {
result = lots;
losses++;
lossesvolume = lossesvolume + OrderLots() / lots;
profits = 0;
}
}
}
result = NormalizeDouble(result, round);
double maxlot = MarketInfo(Symbol(), MODE_MAXLOT);
if (result > maxlot) {
result = maxlot;
}
if (result < minlot) {
mn = mn + 1;
}
RefreshRates();
return(result);
}
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
---