#property strict
input double LotSize = 0.01;
input double TakeProfit = 100; // points (hidden from broker)
input double StopLoss = 50; // points (hidden from broker)
input int Slippage = 1;
input double MartingaleFactor = 2.0;
input double MaxLotSize = 10.0;
input double MaxSpread = 20.0; // Maximum spread allowed (in points)
input int MagicNumber = 1; // Unique Magic Number for this EA
input int TradeStartHour = 0;
input int TradeEndHour = 23;
input string CommentText = "Buy-Only EA";
input bool PushNotifications = true;
input bool EmailAlerts = true;
string lossTradeFile = "last_trade_loss.dat";
double LastLot = 0;
datetime LastClosedTime = 0;
bool LastTradeWasLoss = false;
int OnInit() {
// код доступен только после оплаты
}
void SaveTradeState() {
int fileHandle = FileOpen(lossTradeFile, FILE_BIN | FILE_WRITE);
if (fileHandle != INVALID_HANDLE) {
FileWriteInteger(fileHandle, (LastTradeWasLoss ? 1 : 0), CHAR_VALUE);
FileClose(fileHandle);
}
}
void OnTick() {
// код доступен только после оплаты
}
int currentHour = TimeHour(TimeCurrent());
if (currentHour < TradeStartHour || currentHour > TradeEndHour) return;
double spread = MarketInfo(Symbol(), MODE_SPREAD);
if (spread > MaxSpread) {
Print("Spread too high: ", spread, " points. Trade skipped.");
return;
}
for (int i = 0; i < OrdersTotal(); i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderMagicNumber() == MagicNumber && OrderSymbol() == Symbol()) {
double entryPrice = OrderOpПоказано первые 50% кода (символов: 2625)
Введите ваш email и нажмите кнопку, чтобы перейти к оплате.