Несколько вопросов новичка по тестеру

 
1. Почему не происходит подкачка исторических данных на малых таймфреймах? То есть выбрать-то дату можно, но результат не меняется. Например, EURUSD не качает раньше 10.01.2005, а USDCAD - раньше 16.12.2004? Если же выбрать дневку - то получаются граали :-)
2. Почему не учитывается спред? Мне что, вручную его вычитать при современных технологиях?
3. Что за величина отложена по-горизонтали в Графике Тестера? По-вертикали конкретно написано - Баланс, а по-горизонтали что? Ясно что это - время, но в каких единицах?
4. Почему так сильно разнится результат при выборе разных методов моделирования? И кому нужен метод "По ценам открытия"? Эта цена все равно определяется внутри эксперта. Не делать же другой эксперт - специально для тестера...

Спасибо.
 
1. Почему не происходит подкачка исторических данных на малых таймфреймах? То есть выбрать-то дату можно, но результат не меняется. Например, EURUSD не качает раньше 10.01.2005, а USDCAD - раньше 16.12.2004? Если же выбрать дневку - то получаются граали :-)

Доступная история на сервере
2. Почему не учитывается спред? Мне что, вручную его вычитать при современных технологиях?

вопрос не понятен, где он не учитывается?

3. Что за величина отложена по-горизонтали в Графике Тестера? По-вертикали конкретно написано - Баланс, а по-горизонтали что? Ясно что это - время, но в каких единицах?
А я почему-то думал что это порядковые номера сделок :)
4. Почему так сильно разнится результат при выборе разных методов моделирования? И кому нужен метод "По ценам открытия"? Эта цена все равно определяется внутри эксперта. Не делать же другой эксперт - специально для тестера...
"люди разные нужны, все профессии важны", т.е. для разных стратегий нужно подбирать наиболее подходящий (тот который даст самый близкий к оригиналу) вариант моделирования

Спасибо.
Не за что :)
 
1.
Доступная история на сервере
Пожалуйста, объясните на каком сервере и что значит доступная? Как доступная?
2.
вопрос не понятен, где он не учитывается?
Внутри бара не может быть Sell позиции, когда цена открытия позиции равна High бара, равно как не может быть Buy позиции, когда цена равна Low бара. Цена всегда должна отличаться от High и Low минимум на величину спреда. В [d]Результатах[/b] тестера полно таких моментов, из чего делается вывод о том, что спред не учитывается вообще.(Вычтите из граалей спред :-)...)
3. Ясно:-) Но кто-то уже предлагал показывать время. Неплохая идея...
4. А разве задача разработчиков не состоит в том, чтобы предоставить"наиболее подходящий (тот который даст самый близкий к оригиналу) вариант моделирования? Кому нужны ложные варианты?
Спасибо.
 
Извиняюсь, что влажу в Ваше обсуждение...
НО!
Вот мне например нужен метод "по ценам открытия". Очень нужен, когда я прогоняю свечные комбинации чисто для их определения, а не для прямой торговли. Экономится куча времени, потому как тики ВНУТРИ свечей мне в этом случае ВООБЩЕ не нужны.
Вот Вам и пример. :)
 
1... Пожалуйста, объясните на каком сервере и что значит доступная? Как доступная?

на том где вы берете котировки, например в моей библиотеке есть одна книга, и я могу дать не более одной книги почитать, а вот у моей жены - уже десять и она может дать почитать в пределах десяти книг :) так понятней?
2. Внутри бара не может быть Sell позиции, когда цена открытия позиции равна High бара, равно как не может быть Buy позиции, когда цена равна Low бара. Цена всегда должна отличаться от High и Low минимум на величину спреда. В [d]Результатах[/b] тестера полно таких моментов, из чего делается вывод о том, что спред не учитывается вообще.(Вычтите из граалей спред :-)...)

ты чего-то недопонимаешь, потому твои формулировки не понятны, попробуй использовать предустановленный эксперт он торгует при наступлении определенных условий, вот возьми и посмотри при какой цене эти условия наступают и сравни с ценой совершения сделки и ты увидишь есть разница или нет.
3. было бы удобно если б можно было совмещать график изменения капитала с графиком движения цены, но это можно реализовывать другими сподручными средствами
4. А разве задача разработчиков не состоит в том, чтобы предоставить"наиболее подходящий (тот который даст самый близкий к оригиналу) вариант моделирования? Кому нужны ложные варианты?

так они и сделали , но для разных стратегий оптимальным (качество моделирования / производительность скорость моделирования + просчета индикаторов и прочих данных) моделированием являются разные схемы моделирования, ANK привел тебе пример.
 
При тестировании эксперта в журнале выдаются сообщения типа: "Error opening SELL order: 130", аналогичные сообщения по BUY, в результате ни одной сделки. Где я могу найти расшифровку кодов ошибок, которые выдаются при тестировании экспертов?
 
При тестировании эксперта в журнале выдаются сообщения типа: "Error opening SELL order: 130", аналогичные сообщения по BUY, в результате ни одной сделки. Где я могу найти расшифровку кодов ошибок, которые выдаются при тестировании экспертов?

Похоже, надо поступить как программисты - отловить ситуацию для ордера 130 и вывести в лог все необходимые зависимые и важные переменные. Сразу же отловите ошибку.

А вообще, без кода (приведенного в полном виде и с полным описание где и как его запускать) никто особо помочь и не сможет. Экстрасенсов то тут нет? :)
 
При тестировании эксперта в журнале выдаются сообщения типа: "Error opening SELL order: 130", аналогичные сообщения по BUY, в результате ни одной сделки. Где я могу найти расшифровку кодов ошибок, которые выдаются при тестировании экспертов?

Похоже, надо поступить как программисты - отловить ситуацию для ордера 130 и вывести в лог все необходимые зависимые и важные переменные. Сразу же отловите ошибку.

А вообще, без кода (приведенного в полном виде и с полным описание где и как его запускать) никто особо помочь и не сможет. Экстрасенсов то тут нет? :)

В эксперте используется стандартный ордер:
  	   if ( OpenBuy )     
      {  ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-Stoploss*Point,Ask+TakeProfit*Point,"comment=Null",0,0,Lime);
         if(ticket>0)
         {  if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
         }
         else Print("Error opening BUY order : ",GetLastError()); 
         return(0); 
      }


Код 130 выдается функцией GetLastError()); Меня интересует, разве нет в системе таблицы расшифровки кодов ошибок, выдаваемых этой функцией???
Пользуясь случаем: пожелание разработчикам тестера при написании руководства по тестированию экспертов ориентироваться на начинающих пользователей МТ4, не являющихся программистами, и расписать по шагам весь процесс подготовки к тестированию и само тестирование с использованием разных моделей, начиная с импорта истории.

 
Меня интересует, разве нет в системе таблицы расшифровки кодов ошибок, выдаваемых этой функцией???

Посмотрите встроенную помощь в MetaEditor по GetLastError() - там детально описаны ошибки.

Error codes

The GetLastError() function return codes. Error code constants defined at stderror.mqh file. To print text messages use ErrorDescription() function defined at stdlib.mqh file.

#include <stdlib.mqh>
void SendMyMessage(string text)
{
int check;
SendMail("some subject", text);
check=GetLastError();
if(check!=ERR_NO_MQLERROR) Print("Cannot send message, error: ",ErrorDescription(check));
}



Error codes returned from trade server.

Constant Value Description
ERR_NO_ERROR 0 No error returned.
ERR_NO_RESULT 1 No error returned, but the result is unknown.
ERR_COMMON_ERROR 2 Common error.
ERR_INVALID_TRADE_PARAMETERS 3 Invalid trade parameters.
ERR_SERVER_BUSY 4 Trade server is busy.
ERR_OLD_VERSION 5 Old version of the client terminal.
ERR_NO_CONNECTION 6 No connection with trade server.
ERR_NOT_ENOUGH_RIGHTS 7 Not enough rights.
ERR_TOO_FREQUENT_REQUESTS 8 Too frequent requests.
ERR_MALFUNCTIONAL_TRADE 9 Malfunctional trade operation.
ERR_ACCOUNT_DISABLED 64 Account disabled.
ERR_INVALID_ACCOUNT 65 Invalid account.
ERR_TRADE_TIMEOUT 128 Trade timeout.
ERR_INVALID_PRICE 129 Invalid price.
ERR_INVALID_STOPS 130 Invalid stops.
ERR_INVALID_TRADE_VOLUME 131 Invalid trade volume.
ERR_MARKET_CLOSED 132 Market is closed.
ERR_TRADE_DISABLED 133 Trade is disabled.
ERR_NOT_ENOUGH_MONEY 134 Not enough money.
ERR_PRICE_CHANGED 135 Price changed.
ERR_OFF_QUOTES 136 Off quotes.
ERR_BROKER_BUSY 137 Broker is busy.
ERR_REQUOTE 138 Requote.
ERR_ORDER_LOCKED 139 Order is locked.
ERR_LONG_POSITIONS_ONLY_ALLOWED 140 Long positions only allowed.
ERR_TOO_MANY_REQUESTS 141 Too many requests.


MQL4 run time error codes

Constant Value Description
ERR_NO_MQLERROR 4000 No error.
ERR_WRONG_FUNCTION_POINTER 4001 Wrong function pointer.
ERR_ARRAY_INDEX_OUT_OF_RANGE 4002 Array index is out of range.
ERR_NO_MEMORY_FOR_FUNCTION_CALL_STACK 4003 No memory for function call stack.
ERR_RECURSIVE_STACK_OVERFLOW 4004 Recursive stack overflow.
ERR_NOT_ENOUGH_STACK_FOR_PARAMETER 4005 Not enough stack for parameter.
ERR_NO_MEMORY_FOR_PARAMETER_STRING 4006 No memory for parameter string.
ERR_NO_MEMORY_FOR_TEMP_STRING 4007 No memory for temp string.
ERR_NOT_INITIALIZED_STRING 4008 Not initialized string.
ERR_NOT_INITIALIZED_ARRAYSTRING 4009 Not initialized string in array.
ERR_NO_MEMORY_FOR_ARRAYSTRING 4010 No memory for array string.
ERR_TOO_LONG_STRING 4011 Too long string.
ERR_REMAINDER_FROM_ZERO_DIVIDE 4012 Remainder from zero divide.
ERR_ZERO_DIVIDE 4013 Zero divide.
ERR_UNKNOWN_COMMAND 4014 Unknown command.
ERR_WRONG_JUMP 4015 Wrong jump (never generated error).
ERR_NOT_INITIALIZED_ARRAY 4016 Not initialized array.
ERR_DLL_CALLS_NOT_ALLOWED 4017 DLL calls are not allowed.
ERR_CANNOT_LOAD_LIBRARY 4018 Cannot load library.
ERR_CANNOT_CALL_FUNCTION 4019 Cannot call function.
ERR_EXTERNAL_EXPERT_CALLS_NOT_ALLOWED 4020 Expert function calls are not allowed.
ERR_NOT_ENOUGH_MEMORY_FOR_RETURNED_STRING 4021 Not enough memory for temp string returned from function.
ERR_SYSTEM_BUSY 4022 System is busy (never generated error).
ERR_INVALID_FUNCTION_PARAMETERS_COUNT 4050 Invalid function parameters count.
ERR_INVALID_FUNCTION_PARAMETER_VALUE 4051 Invalid function parameter value.
ERR_STRING_FUNCTION_INTERNAL_ERROR 4052 String function internal error.
ERR_SOME_ARRAY_ERROR 4053 Some array error.
ERR_INCORRECT_SERIES_ARRAY_USING 4054 Incorrect series array using.
ERR_CUSTOM_INDICATOR_ERROR 4055 Custom indicator error.
ERR_INCOMPATIBLE_ARRAYS 4056 Arrays are incompatible.
ERR_GLOBAL_VARIABLES_PROCESSING_ERROR 4057 Global variables processing error.
ERR_GLOBAL_VARIABLE_NOT_FOUND 4058 Global variable not found.
ERR_FUNCTION_NOT_ALLOWED_IN_TESTING_MODE 4059 Function is not allowed in testing mode.
ERR_FUNCTION_NOT_CONFIRMED 4060 Function is not confirmed.
ERR_SEND_MAIL_ERROR 4061 Send mail error.
ERR_STRING_PARAMETER_EXPECTED 4062 String parameter expected.
ERR_INTEGER_PARAMETER_EXPECTED 4063 Integer parameter expected.
ERR_DOUBLE_PARAMETER_EXPECTED 4064 Double parameter expected.
ERR_ARRAY_AS_PARAMETER_EXPECTED 4065 Array as parameter expected.
ERR_HISTORY_WILL_UPDATED 4066 Requested history data in updating state.
ERR_END_OF_FILE 4099 End of file.
ERR_SOME_FILE_ERROR 4100 Some file error.
ERR_WRONG_FILE_NAME 4101 Wrong file name.
ERR_TOO_MANY_OPENED_FILES 4102 Too many opened files.
ERR_CANNOT_OPEN_FILE 4103 Cannot open file.
ERR_INCOMPATIBLE_ACCESS_TO_FILE 4104 Incompatible access to a file.
ERR_NO_ORDER_SELECTED 4105 No order selected.
ERR_UNKNOWN_SYMBOL 4106 Unknown symbol.
ERR_INVALID_PRICE_PARAM 4107 Invalid price.
ERR_INVALID_TICKET 4108 Invalid ticket.
ERR_TRADE_NOT_ALLOWED 4109 Trade is not allowed.
ERR_LONGS__NOT_ALLOWED 4110 Longs are not allowed.
ERR_SHORTS_NOT_ALLOWED 4111 Shorts are not allowed.
ERR_OBJECT_ALREADY_EXISTS 4200 Object exists already.
ERR_UNKNOWN_OBJECT_PROPERTY 4201 Unknown object property.
ERR_OBJECT_DOES_NOT_EXIST 4202 Object does not exist.
ERR_UNKNOWN_OBJECT_TYPE 4203 Unknown object type.
ERR_NO_OBJECT_NAME 4204 No object name.
ERR_OBJECT_COORDINATES_ERROR 4205 Object coordinates error.
ERR_NO_SPECIFIED_SUBWINDOW 4206 No specified subwindow.
 
Меня интересует, разве нет в системе таблицы расшифровки кодов ошибок, выдаваемых этой функцией???

Посмотрите встроенную помощь в MetaEditor по GetLastError() - там детально описаны ошибки.


Спасибо за оперативный ответ! Удивляюсь, как это я сам не нашел.
Причина обращения: