Dikons | Дата: Среда, 22.10.2014, 20:13 | Сообщение # 21 |
*******
Группа: Администраторы
Сообщений: 332
Статус: Отключен
| Вывод сообщения в окошке, если в опциях робота некорректные настройки (в данном случае - проверка на разрешение торговать в одну из сторон: к примеру в опциях есть две настройки: Buys = false; ( запрещено покупать) Sells = true; ( разрешено продавать) если обе выставлены false - вывести в окошко сообщение об этом и вернуть управление терминалу)
if(!Buys && !Sells) {MessageBox("В настройках робота опции:" +"\nBuys = false и Sells = false" +"\n\n - хотя бы одна из этих опций должна быть true" +"\n (если обе опции true - робот будет работать в обе стороны одновременно)" +"\n\n ",name,MB_OK|MB_ICONSTOP); return 0;} параметр name предъопределён заранее в шапке робота строкой, к примеру : string name = "Робот Лесенка - 001"; и будет выведен в заголовке окошка.
|
|
| |
Dikons | Дата: Пятница, 21.11.2014, 01:20 | Сообщение # 22 |
*******
Группа: Администраторы
Сообщений: 332
Статус: Отключен
| //---- проверяем - это свежий старт, или уже был цикл... double Prof, HisLot; int Tip; for(int d=0; d<OrdersHistoryTotal( ) ;d++) { OrderSelect(d, SELECT_BY_POS, MODE_HISTORY); if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { Prof = OrderProfit(); // прибыль/просадка последнего ордера HisLot= OrderLots(); // лот последнего ордера } } if(HisLot>HisMaxLot)HisMaxLot=HisLot; if (Prof<0 && ULots>0) // если Prof<0 => был убыток => увеличиваем лот... { if(ULots<2)Lot = HisLot+MinLot; if(ULots>1)Lot = HisLot+HisLot; }
|
|
| |
Dikons | Дата: Воскресенье, 13.03.2016, 19:22 | Сообщение # 23 |
*******
Группа: Администраторы
Сообщений: 332
Статус: Отключен
| //---- Ищем максимумы и минимумы азиатской сессии (первых 8 свечей Н1 в сутках)
int h=TimeHour(TimeCurrent()); // сначала узнаем текущий терминальный час (0...23) double Maxi=iHigh(NULL,PERIOD_H1, iHighest(NULL,PERIOD_H1,MODE_HIGH,8,h-7)); double Mini=iLow(NULL,PERIOD_H1,iLowest(NULL,PERIOD_H1,MODE_LOW,8,h-7));
Блок работает корректно на любом периоде графика. К примеру, если на графике включен период М15, или Н4, или D1... - блок всё равно высчитает экстримумы 8 свечей Н1 от начала суток.
|
|
| |