Новые сообщения · Участники · Правила форума · Поиск · RSS · Вход · Регистрация ·

Страница 1 из 3123»
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Эксперт или скрипт который тестирует экспертов не на предмет (эксперт или скрипт который тестирует экспертов не на предмет)
Эксперт или скрипт который тестирует экспертов не на предмет

expforexДата: Суббота, 27.11.2010, 14:05 | Сообщение # 1
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

эксперт или скрипт который тестирует экспертов не на предмет их лояльности к прибыли



Программирование на заказ || Наши Разработки

 
Сообщениеэксперт или скрипт который тестирует экспертов не на предмет их лояльности к прибыли

Автор - expforex
Дата добавления - 27.11.2010 в 14:05

GrafBassДата: Суббота, 27.11.2010, 14:05 | Сообщение # 2
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Здравствуйте.
А есть ли у вас такой эксперт или скрипт который тестирует экспертов не на предмет их лояльности к прибыли, а на предмет их адекватного кода и на совместимость его с терминалом и условиями ДЦ на котором он запущен. Иначе говоря как бы посмотреть, что творит советник и как на это реагирует брокер. В лог файле ведь ничего толком не видно или не всегда есть вообще информация. К примеру поставил я тут еще один терминал на другом ДЦ и не хотят работать советники, не могу понять почему. Тех. поддержка бубнит , что у них все работает корректно и все тут. Смотрите типа ваши настройки и выводите параметры работы эксперта на экран и смотрите, что не так. Как бы теперь мне вот это увидеть, подскажите.



Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеЗдравствуйте.
А есть ли у вас такой эксперт или скрипт который тестирует экспертов не на предмет их лояльности к прибыли, а на предмет их адекватного кода и на совместимость его с терминалом и условиями ДЦ на котором он запущен. Иначе говоря как бы посмотреть, что творит советник и как на это реагирует брокер. В лог файле ведь ничего толком не видно или не всегда есть вообще информация. К примеру поставил я тут еще один терминал на другом ДЦ и не хотят работать советники, не могу понять почему. Тех. поддержка бубнит , что у них все работает корректно и все тут. Смотрите типа ваши настройки и выводите параметры работы эксперта на экран и смотрите, что не так. Как бы теперь мне вот это увидеть, подскажите.

Автор - GrafBass
Дата добавления - 27.11.2010 в 14:05

expforexДата: Суббота, 27.11.2010, 14:05 | Сообщение # 3
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Такой программы нет, нужно смотреть код - искать ошибки в журнале, вариантов - миллион. Запущен ли эксперт правильно, улыбается ли смайл в правом верхнем углу. Разрешен ли вообще торговать совтенику или нет.



Программирование на заказ || Наши Разработки

 
СообщениеТакой программы нет, нужно смотреть код - искать ошибки в журнале, вариантов - миллион. Запущен ли эксперт правильно, улыбается ли смайл в правом верхнем углу. Разрешен ли вообще торговать совтенику или нет.

Автор - expforex
Дата добавления - 27.11.2010 в 14:05

GrafBassДата: Суббота, 27.11.2010, 14:06 | Сообщение # 4
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Да, советники запускал правильно, они у меня на других терминалах торгуют. На этом неудачном ДЦ смог запустить только советник который открывает 1 раз в день два ордера в обоих направлениях. Остальные советники использующие "колено" по принципу мартингейла не пашут, точнее пашут, но только с лотом 1.0 (это в тетсере видно и на демо пробовал, на реале не рискнул ), а слотами от 0,05 до 0,1 пробовал и на реале и на демо и на тестере. Попробовал все советники, даже те которые мне и не нужны вовсе, результат одинаков. Или пишет "invalid lots amount for FreeMarginCheck function", или " пишет каждые 5 секунд "Торговля разрешена"- но ничего не происходит. С лотом 0,5 стартуют, но ордера выставляются на 1.0

Добавлено (27.11.2010, 00:27)
---------------------------------------------
А разве нельзя написать скрипт который пишет или показывает на экране, я типа посмотрел то -то, потом сделал это, а вот вот это у меня не получилось по таким то причинам...

Добавлено (27.11.2010, 00:49)
---------------------------------------------
Хочу извиниться если начал писать не в той теме форума. Хочу спросить еще уважаемых программеров, имеет ли в моей проблеме значение "Шаг изменения лота - 0,1" в значениях сервера, полученных через скрипт Инфо о сервере. Хочу все таки добиться запуска экспертов на том серваке, денег вручную там уже профукал много и быстро, надо отомстить и вернуть награбленное. angry



Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеДа, советники запускал правильно, они у меня на других терминалах торгуют. На этом неудачном ДЦ смог запустить только советник который открывает 1 раз в день два ордера в обоих направлениях. Остальные советники использующие "колено" по принципу мартингейла не пашут, точнее пашут, но только с лотом 1.0 (это в тетсере видно и на демо пробовал, на реале не рискнул ), а слотами от 0,05 до 0,1 пробовал и на реале и на демо и на тестере. Попробовал все советники, даже те которые мне и не нужны вовсе, результат одинаков. Или пишет "invalid lots amount for FreeMarginCheck function", или " пишет каждые 5 секунд "Торговля разрешена"- но ничего не происходит. С лотом 0,5 стартуют, но ордера выставляются на 1.0

Добавлено (27.11.2010, 00:27)
---------------------------------------------
А разве нельзя написать скрипт который пишет или показывает на экране, я типа посмотрел то -то, потом сделал это, а вот вот это у меня не получилось по таким то причинам...

Добавлено (27.11.2010, 00:49)
---------------------------------------------
Хочу извиниться если начал писать не в той теме форума. Хочу спросить еще уважаемых программеров, имеет ли в моей проблеме значение "Шаг изменения лота - 0,1" в значениях сервера, полученных через скрипт Инфо о сервере. Хочу все таки добиться запуска экспертов на том серваке, денег вручную там уже профукал много и быстро, надо отомстить и вернуть награбленное. angry


Автор - GrafBass
Дата добавления - 27.11.2010 в 14:06

expforexДата: Суббота, 27.11.2010, 14:06 | Сообщение # 5
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (GrafBass)
А разве нельзя написать скрипт который пишет или показывает на экране, я типа посмотрел то -то, потом сделал это, а вот вот это у меня не получилось по таким то причинам...

К сожалению нельзя написать универсальность такого скрипта.

Quote (GrafBass)
очу извиниться если начал писать не в той теме форума. Хочу спросить еще уважаемых программеров, имеет ли в моей проблеме значение "Шаг изменения лота - 0,1" в значениях сервера

Спросите Вашего сервера - Мин лот, и шаг, если шаг 0,1 то мин лот тоже должен быть 0,1,

Значит дело в сове, он может по внутреннему коду неправильно рассчитывает Маржу.



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (GrafBass)
А разве нельзя написать скрипт который пишет или показывает на экране, я типа посмотрел то -то, потом сделал это, а вот вот это у меня не получилось по таким то причинам...

К сожалению нельзя написать универсальность такого скрипта.

Quote (GrafBass)
очу извиниться если начал писать не в той теме форума. Хочу спросить еще уважаемых программеров, имеет ли в моей проблеме значение "Шаг изменения лота - 0,1" в значениях сервера

Спросите Вашего сервера - Мин лот, и шаг, если шаг 0,1 то мин лот тоже должен быть 0,1,

Значит дело в сове, он может по внутреннему коду неправильно рассчитывает Маржу.


Автор - expforex
Дата добавления - 27.11.2010 в 14:06

GrafBassДата: Суббота, 27.11.2010, 14:06 | Сообщение # 6
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Инфо о сервере прилагаю, посмотрите если не затруднит. А вообще сервер разрешает торговать с минимальным лотом 0.05, мне этот лот пока и нужен.

Добавлено (27.11.2010, 13:15)
---------------------------------------------
Я тут декомпильнул один советник и стал по наитию искать причину, вот в этой строчке вроде про мин лот что то говорится, может надо ее подправить на 0,05 ?

int init() {
gd_340 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
switch (MarketInfo(Symbol(), MODE_MINLOT)) {
case 0.001:
gd_240 = 3;
break;
case 0.01:
gd_240 = 2;
break;
case 0.1:
gd_240 = 1;
break;
case 1.0:
gd_240 = 0;

Прикрепления: 5947515.jpg(34Kb)


Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеИнфо о сервере прилагаю, посмотрите если не затруднит. А вообще сервер разрешает торговать с минимальным лотом 0.05, мне этот лот пока и нужен.

Добавлено (27.11.2010, 13:15)
---------------------------------------------
Я тут декомпильнул один советник и стал по наитию искать причину, вот в этой строчке вроде про мин лот что то говорится, может надо ее подправить на 0,05 ?

int init() {
gd_340 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
switch (MarketInfo(Symbol(), MODE_MINLOT)) {
case 0.001:
gd_240 = 3;
break;
case 0.01:
gd_240 = 2;
break;
case 0.1:
gd_240 = 1;
break;
case 1.0:
gd_240 = 0;


Автор - GrafBass
Дата добавления - 27.11.2010 в 14:06

expforexДата: Суббота, 27.11.2010, 14:06 | Сообщение # 7
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Это на количество знаков при нормализации лота.

Я ж говорю что-то в советнике, возможно он неправильно переводит значение.

Например по Вашему примеру:
Если мин лот 0.1 то он присваивает значение 1 после запятой,

Но что-то мне подсказывает что если минимальный лот 0,05, то он присваивает значение 0, значит и нормализация идет на 0.

В Вашем случае Вам нужно сделать следующее:

int init() {
gd_340 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
switch (MarketInfo(Symbol(), MODE_MINLOT)) {
case 0.001:
gd_240 = 3;
break;
case 0.01:
gd_240 = 2;
break;
case 0.1:
gd_240 = 1;
break;
case 1.0:
gd_240 = 0;
case 0.05:
gd_240 = 2;



Программирование на заказ || Наши Разработки

 
СообщениеЭто на количество знаков при нормализации лота.

Я ж говорю что-то в советнике, возможно он неправильно переводит значение.

Например по Вашему примеру:
Если мин лот 0.1 то он присваивает значение 1 после запятой,

Но что-то мне подсказывает что если минимальный лот 0,05, то он присваивает значение 0, значит и нормализация идет на 0.

В Вашем случае Вам нужно сделать следующее:

int init() {
gd_340 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
switch (MarketInfo(Symbol(), MODE_MINLOT)) {
case 0.001:
gd_240 = 3;
break;
case 0.01:
gd_240 = 2;
break;
case 0.1:
gd_240 = 1;
break;
case 1.0:
gd_240 = 0;
case 0.05:
gd_240 = 2;


Автор - expforex
Дата добавления - 27.11.2010 в 14:06

GrafBassДата: Суббота, 27.11.2010, 16:32 | Сообщение # 8
Трейдер - Полковник
Группа: Член клуба UTS
Сообщений: 158
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Спасибо, попробую изменить.
Подскажите еще, что означает вот это:

if (g_time_360 == Time[0]) return (0);
g_time_360 = Time[0];
double ld_0 = CalculateProfit();
if (SafeEquity) {
if (ld_0 < 0.0 && MathAbs(ld_0) > SafeEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll();
Print("Closed All due to Stop Out");
gi_412 = FALSE;

Добавлено (27.11.2010, 16:32)
---------------------------------------------
Подпрвил советник как вы сказали, заработало! Спасибо огромное!!!
Хотя я так и не допонял в чем разница между 0,01 и 0,05 ведь вторые знаки 1 и 5 соответственно в разрядности, теперь и на лот 0,1 заработало. Похоже это быть как то связано с настройками самого сервера привязанных к кратности минимального лота, шаг увеличения лота работает только с целыми значениями.



Будующее нельзя предвидеть, но можно изобрести.
 
СообщениеСпасибо, попробую изменить.
Подскажите еще, что означает вот это:

if (g_time_360 == Time[0]) return (0);
g_time_360 = Time[0];
double ld_0 = CalculateProfit();
if (SafeEquity) {
if (ld_0 < 0.0 && MathAbs(ld_0) > SafeEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll();
Print("Closed All due to Stop Out");
gi_412 = FALSE;

Добавлено (27.11.2010, 16:32)
---------------------------------------------
Подпрвил советник как вы сказали, заработало! Спасибо огромное!!!
Хотя я так и не допонял в чем разница между 0,01 и 0,05 ведь вторые знаки 1 и 5 соответственно в разрядности, теперь и на лот 0,1 заработало. Похоже это быть как то связано с настройками самого сервера привязанных к кратности минимального лота, шаг увеличения лота работает только с целыми значениями.


Автор - GrafBass
Дата добавления - 27.11.2010 в 16:32

expforexДата: Суббота, 27.11.2010, 17:36 | Сообщение # 9
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (GrafBass)
Подпрвил советник как вы сказали, заработало! Спасибо огромное!!!
Хотя я так и не допонял в чем разница между 0,01 и 0,05 ведь вторые знаки 1 и 5

Да но здесь перебор не по разрядности а по четкому лоту, т.е. есть 0,01, но нет 0,05, поэтому дефаулт значение было 0, тем самым все округлялось до 1 целого лота.



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (GrafBass)
Подпрвил советник как вы сказали, заработало! Спасибо огромное!!!
Хотя я так и не допонял в чем разница между 0,01 и 0,05 ведь вторые знаки 1 и 5

Да но здесь перебор не по разрядности а по четкому лоту, т.е. есть 0,01, но нет 0,05, поэтому дефаулт значение было 0, тем самым все округлялось до 1 целого лота.

Автор - expforex
Дата добавления - 27.11.2010 в 17:36

expforexДата: Суббота, 27.11.2010, 17:38 | Сообщение # 10
Главный Администартор
Группа: Администраторы
Сообщений: 8960
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

Quote (GrafBass)
if (g_time_360 == Time[0]) return (0);
g_time_360 = Time[0];

Работать 1 раз на 1 баре

Quote (GrafBass)
f (SafeEquity) {
if (ld_0 < 0.0 && MathAbs(ld_0) > SafeEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll();

Если функция включена, то закрывать все позиции при достижении %

Quote (GrafBass)
Print("Closed All due to Stop Out");
gi_412 = FALSE;

Остановить торговлю



Программирование на заказ || Наши Разработки

 
Сообщение
Quote (GrafBass)
if (g_time_360 == Time[0]) return (0);
g_time_360 = Time[0];

Работать 1 раз на 1 баре

Quote (GrafBass)
f (SafeEquity) {
if (ld_0 < 0.0 && MathAbs(ld_0) > SafeEquityRisk / 100.0 * AccountEquityHigh()) {
CloseThisSymbolAll();

Если функция включена, то закрывать все позиции при достижении %

Quote (GrafBass)
Print("Closed All due to Stop Out");
gi_412 = FALSE;

Остановить торговлю

Автор - expforex
Дата добавления - 27.11.2010 в 17:38
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Эксперт или скрипт который тестирует экспертов не на предмет (эксперт или скрипт который тестирует экспертов не на предмет)
Страница 1 из 3123»
Поиск:


WebMoney Яндекс цитирования.