Откоментил тут, но решил вынести в отдельную тему.
Собственно само сообщения "ура, теперь тестер работает с нормальной скоростью, вот если ещё снимете ограничения количества оптимизированных параметры, тогда может и подумаю стоит ли переходить к тестеру от MetaQuotes Software Corp :)".
Вообще не...
1) Смотрим код:
double Open[];int Open_handle;MqlTradeRequest Request;MqlTradeResult Result; bool result;int OnInit() {Open_handle=CopyOpen(NULL,PERIOD_CURRENT,0,100,Open); ArraySetAsSeries(Open,true); return(0); }void OnTick() {//---Request.price=SymbolInfoDouble(Symbol(),SYMBOL_BID);...
Переписываю мульта с mql4 на mql5. По условиям ММ объём позиции изменяется фиксированным шагом от стартового объёма. Стартовый объём определяется при инициализации эксперта. В mql4 это выполнялось так:
margin=MarketInfo(Symbols[i], MODE_MARGINREQUIRED); //Маржа для 1-го лотаif(margin...
Добрый вечер!
Тестирую советник.
Делаю на тик проверку, открыт ли ордер в этом(Н4) баре, и не могу понять почему иногда проскакивает и не замечает сделку. Помогите разобраться.
void OnTick() {//---//определения fl......//и на каждый тик проверка int copiedRates=CopyRates(SymbInfo[l]...
Добрый вечер!
Подскажите как доделать функцию ?
//ф-я возвращает true если в этом периоде/баре НЕ делалась сделка или она закрылась, иначе false bool NoTradeThisBar(string m_symbol,ENUM_TIMEFRAMES m_period,datetime start_time,datetime finish_time) {//HistorySelect(0,TimeCurrent());...
Добрый день!
int OnInit() { return(0); }//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+void OnDeinit(const int...
как получить последнюю по времени вершину Zigzag - a в эксперте ?
Приведите простейший пример
Ситуация следующая:
мы открыли позицию по инструменту, но СЛ/ТП не устанавливали, затем позицию модифицировали.
Внимание, вопрос:
после того, как позиция закрылась, как узнать уровень ее СЛ/ТП?
bool b=0, s=0;
void Check_History()
{
HistorySelect(0,TimeCurrent());
int deals=HistoryDealsTotal();
for(int i=deals-0;i>=0;i--)
{
ulong ticket=HistoryDealGetTicket(i);
if(ticket==0)
{
Print("HistoryDealGetTicket failed, no trade...
мне очень нравится библиотека классов Include/Expert/*, поставляемая с MT5, и в качестве примера реализации и просто как ядро для разработки собственного эксперта. спасибо разработчикам за это!
в процессе копания в исходниках у меня возникло несколько вопросов к разработчикам:
1) какая задача...
Доброго времени суток.
Подскажите кто знает как передавать данные для функции через указатели.
Пример
void f1 (int* v0, double* v1)
{
..........
.............
}
Заранее благодарю.
subj
MqlTick last_tick; SymbolInfoTick(_Symbol,last_tick); double ASK=last_tick.ask; double BID=last_tick.bid; double spread=ASK-BID; NormalizeDouble (spread, _Digits); Alert(spread);
Скриптом не проверял (не интересует) но в советнике Алерт (0)
Здравствуйте ,форумчане! Кому не сложно и не в лом, напишите пожалуйста скрипт который бы проверял есть ли открытый шелл + нет ли любых отложеных ордеров и если вышесказанное -истина, то ставил бы бай стоп с определенными параметрами.(параметры можете любые поставить, я уж там разберусь)
Уверен,...
Для реализации некоторых задач в экспертах возникает соблазн использовать журнал эксперта для промежуточного хранения данных, которые были бы предварительно сознательно туда записаны для последующего извлечения. Но вот проблема – как эти данные оттуда извлечь? Для вкладки «История» есть множество...
Может есть у кого-то готовий алгоритм на ограничение время работы внутри эксперта, например Start time = 16.30 && End time = 03.20 ?
Я тестирую свой советник в режиме все тики. Он не чувствителен к небольшим колебаниям, однако режим выставления рыночных ордеров с немедленным исполнением требует этого. Что бы оптимизировать работу тестера стратегий и не напрягать алгоритм чрезмерно частыми вызовами я решил вызывать основной...
При оформлении запроса на установку отложенного ордера пробую использовать такую конструкцию:
request.expiration=TimeTradeServer()+int(PeriodSeconds()/Div);
где Div - input-переменная типа float (double). При этом ожидаю, что изменение времени истечения ордера должно влиять на результаты ТС. Цель...
Подскажите как реализовать эту функцию из четверки
void CloseAllOrders(){ for(int cnt=OrdersTotal()-1;cnt>=0;cnt--) { if( !OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ) { Print("OrderSelect() failed");...
Запутался я . Код в MQL4for (int c=OrdersHistoryTotal()-1; c<=OrdersHistoryTotal(); c++) { if (OrderSelect(c, SELECT_BY_POS, MODE_HISTORY)) { if (OrderType()==OP_BUY) { if(OrderProfit()>=0){} if(OrderProfit()<0){}} if (OrderType()==OP_SELL) { if(OrderProfit()>=0){}...
В статье "Переход с MQL4 на MQL5" я нашел следующий эквивалент iOpen double iOpenMQL4_(string symbol,int tf,int index){ if(index < 0) return(-1); double Arr[]; ENUM_TIMEFRAMES timeframe=TFMigrate(tf); if(CopyOpen(symbol,timeframe, index, 1, Arr)>0) return(Arr[0]); else...
В разделе "Торговые функции" про функции типа PositionSelect() сказано, что "...для гарантированного получения свежих данных о позиции рекомендуется вызывать функцию
PositionSelect() непосредственно перед обращением за ними". Аналогичные комментарии имеются и для функций, работающих с...
Доброго времени суток. Написал советника. С демо счетом работает, но тестер выдает ошибку:
“debug version of 'exp1.ex5', please recompile it”
“loading of exp1 (EURUSD,H1) failed”
Тестировал встроенного советника, было все нормально пока не перекомпилировал его, похоже проблемы с компилятором,...
Вопрос 1. В справочнике указано, что в выражениях языка можно использовать как явное преобразование типов:
var_1 = (тип)var_2;
так и функциональную запись явного приведения типов:
var_1 = тип(var_2);
Но в примерах из справочника используется только первый вариант. Имеются ли какие-нибудь...
Как сделать так, чтобы при старте эксперта подгружалась истории котировок(не меньше опр. кол-ва)?
Спасибо.
Вопрос возможно покажется странным.Как известно, существует SYMBOL_EXPIRATION_MODE. На сервере МетаКвот он равен 7...
Эксперт проверил флаги и установил, что все режимы установления времени истечения возможны.Однако, при попытке программно установить время истечения, генерируется ошибка2010.08.10...
bool HeikenAshi::Create(string _symbol,ENUM_TIMEFRAMES _timeframe){ symbol = _symbol; timeframe = _timeframe; handle = iCustom( symbol, timeframe, "Examples\\Heiken_Ashi" ); if( handle < 0 ) { Print( "Ошибка при инициализации Heiken Ashi #: ",...
При установке отложенного ордера требуется указание 11 обязательных полей, среди которые есть поля "stoplimit", "type_time" и "expiration".
Для моей стратегии параметры "stoplimit" и "expiration" не нужны. Как в таком случае правильно указать значения соответствующих полей?
Какой из вариантов...
1. Есть ли в MQL5 функция, позволяющая програмно включить TrailingStop для открытой позиции? И если позиция состоит из более чем одной сделки, как выбрать ту по которой нужно включить TrailingStop?
2. Есть ли в MQL5 функция закрытия позиции (сделки) ? Я что-то не нашёл ?
Ваш минимум, который должен включать в себя советник, представленный на конкурсе...
Одним словом, какие модули должны присутствовать в нем ( Money Management, Trailing Stop и т.д. )?
Какие оригинальные методы, по вашему мнению, необходимо использовать в советниках?
Здравствуйте,
Есть урок по написанию простого советника для начинающего https://www.mql5.com/ru/articles/100 но в нем на мой взгляд слишком много всего.
Я бы попросил написать здесь простой советник с комментариями у которого функции(пример):
1 Если цена вырастает до 1500 пунктов - покупает
2...
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Если у вас нет учетной записи, зарегистрируйтесь
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.