Обучение языку MQL4 под MetaTrader 4📌

От xbms, 13 апреля, 2013 в Уголок Программиста

#352


перезагрузи историю может!!! и проверь период по которому тв тестишь!!!!


Добавлено: 07-10-2013 18:52:49

Народ а кто подскажет как получить дистанцию в пипах ну допустим от iOpen до iClose???

Какую историю? Другие советники тестируются.
Или ты хочешь сказать, что у тебя тоже протестировался мой файлик?
#353


Добрый день. Проблема вот в чем:
Второй урок по циклам, и написание советника, который в 10 утра открывает 2 отложки.

Писал всё как было по курсу, скомпилирол без ошибок, но в тестере стратегий советник не запускается, вообще, никак, во время визуализации вообще график не двигается:(

Скажите в чем может быть проблема?



Привет!
Есть описка, в функции GetMaxPrice(), в этой строчке:
for(int i=1; 1
#354


Привет!
Есть описка, в функции GetMaxPrice(), в этой строчке:


Спасибо, сам бы очень маловероятно что нашел)))))
ты в ручную нашел или магией владеешь?)
#355


elruso, шрифтами не балуйтесь...
Попробуйте выделиться умом! :)
Удачи!



Старик! Да это ты правильно заметил ! Одни умники здесь сидят и молчат вот такие как ты!!! а которые хотят подучиться здесь время теряют!!! Лучше у Google спросить больше толку! А насчёт расстояния в пипах я уже нашёл способ если кого интересует я расскажу как!!! А то здесь одни умники а рот открывают только в пустую!

Добавлено: 07-10-2013 20:46:40



Привет!
Есть описка, в функции GetMaxPrice(), в этой строчке:


Спасибо, сам бы очень маловероятно что нашел)))))
ты в ручную нашел или магией владеешь?)


а разве есть ошибка в строчке for(......
я виже вот здесь double dMax = 0,

Изменено 8 октября, 2013 пользователем elruso

#356


а разве есть ошибка в строчке for(......
я виже вот здесь double dMax = 0,



ошибка была именно там.
а где Вы написали, там всё верно, ведь в цикле dMax получает сразу значение первого бара, тк 0 в любом случае будет меньше, чем значение бара.
#357



elruso, шрифтами не балуйтесь...
Попробуйте выделиться умом! :)
Удачи!



Старик! Да это ты правильно заметил ! Одни умники здесь сидят и молчат вот такие как ты!!! а которые хотят подучиться здесь время теряют!!! Лучше у Google спросить больше толку! А насчёт расстояния в пипах я уже нашёл способ если кого интересует я расскажу как!!! А то здесь одни умники а рот открывают только в пустую!


Тихо, юноша, тихо. Уже ж сказали - не надо большими буквами кричать.
Тыкать тоже не обязательно, когда к вам на вы обращались.

Что касается помощи, то мало у кого есть время и силы в чужих кодах ковыряться.
Программы чаще всего пишутся в одиночестве и помощи ждать неоткуда.
Привыкайте с первого дня работать в изоляции и будьте готовы к тому, что есть, может, 1% шанс, что вы будете более-менее пристойно писать простых ботов.
Научиться серьезно программировать намного сложнее, чем кажется.
#358


Спасибо, сам бы очень маловероятно что нашел)))))
ты в ручную нашел или магией владеешь?)


:)
У меня цифры подсвечены красным, найти было легко. (в редакторе: Сервис \ Параметры \ Цвета - на свой вкус...)
#359




elruso, шрифтами не балуйтесь...
Попробуйте выделиться умом! :)
Удачи!



Старик! Да это ты правильно заметил ! Одни умники здесь сидят и молчат вот такие как ты!!! а которые хотят подучиться здесь время теряют!!! Лучше у Google спросить больше толку! А насчёт расстояния в пипах я уже нашёл способ если кого интересует я расскажу как!!! А то здесь одни умники а рот открывают только в пустую!


Тихо, юноша, тихо. Уже ж сказали - не надо большими буквами кричать.
Тыкать тоже не обязательно, когда к вам на вы обращались.

Что касается помощи, то мало у кого есть время и силы в чужих кодах ковыряться.
Программы чаще всего пишутся в одиночестве и помощи ждать неоткуда.
Привыкайте с первого дня работать в изоляции и будьте готовы к тому, что есть, может, 1% шанс, что вы будете более-менее пристойно писать простых ботов.
Научиться серьезно программировать намного сложнее, чем кажется.


Извините Старик буду на Вы!!! Я не просил в моём коде ковыряться! я просто спросил потому-что ковыряюсь в документации и не нахожу а Вы меня оскорбили!!! я думал эта ветка для этого предназначена!
#360
elruso, расслабьтесь. Никто вас не оскорбляет.
Просто писать на форуме гигантскими буквами - это примерно то же, что громко кричать в комнате, где люди спокойно разговаривают.
Я вам всего лишь предложил на кричать большими буквами, а изъясняться обычными.

#361


elruso, расслабьтесь. Никто вас не оскорбляет.
Просто писать на форуме гигантскими буквами - это примерно то же, что громко кричать в комнате, где люди спокойно разговаривают.
Я вам всего лишь предложил на кричать большими буквами, а изъясняться обычными.




Ладно Старик давай!!! Я не знал что большие буквы здесь у вас означают крик!!!! Я просто знаю что умные люди они тоже слеповаты поэтому решил попробовать побольше шрифт!!! Вот видите Вы сразу увидели и ответили хаха!!! :d
Автор#362

Всем привет!

Что за паника?
Я не сижу за компьютером 24 часа в сутки, elruso - это форум, это не скайп! :)

Проблема в том, что до Вас немного не доходит что Вы тут пишите...
Почему Print(i) ? Вы упорно продолжаете печатать в журнале переменную счетчика циклов, либо повторно обращаться к рандому...

Конечно Random выдаст инфу из без массива, но ведь задача состоит в том, чтобы научиться работать именно с массивом. Т.е. как его заполнять данными и как их оттуда извлекать...
В этом состоит суть урока.

Подумайте ещё... ;)
И пересмотрите ещё раз внимательно урок, ведь там есть ответы на Ваши вопросы.

Изменено 8 октября, 2013 пользователем xbms

#363


Всем привет!

Что за паника?
Я не сижу за компьютером 24 часа в сутки, elruso - это форум, это не скайп! :)

Проблема в том, что до Вас немного не доходит что Вы тут пишите...
Почему Print(i) ? Вы упорно продолжаете печатать в журнале переменную счетчика циклов, либо повторно обращаться к рандому...

Конечно Random выдаст инфу из без массива, но ведь задача состоит в том, чтобы научиться работать именно с массивом. Т.е. как его заполнять данными и как их оттуда извлекать...
В этом состоит суть урока.

Подумайте ещё... ;)
И пересмотрите ещё раз внимательно урок, ведь там есть ответы на Ваши вопросы.



Xbms всё великолепно и ясно у вас расписано на видео я уже всё понял поехали дальше ;)!!!




Добавлено: 08-10-2013 23:02:43

Xbms здравствуйте есть вопрос по уроку 1.5! Есть массив:
double a[30];

И есть внешняя переменная COUNT которая говорит сколько мест из 30 будет заполнено через цикл да!!! То есть если COUNT 10 то я заполню толко 10 индексов массива от 0 до 9 да!!! То есть COUNT по любому должен быть

Изменено 9 октября, 2013 пользователем elruso

#364



double a[30];

А если я передумал я хочу больше 30 -ти мест!!! Надо лесть в код и менять? Как можно контролировать индекс массива?


extern int N=30;
.
.
.
double a[N];
#365




double a[30];

А если я передумал я хочу больше 30 -ти мест!!! Надо лесть в код и менять? Как можно контролировать индекс массива?


extern int N=30;
.
.
.
double a[N];




Да я пробовал!!! Но он не хочет N выдаёт ошибку!!!
#366

Всем привет, читая код экспертов уже несколько раз встречал фразы типа:


while (!IsTradeAllowed()) Sleep(5000);
if(!IsConnected())


Вопрос, что обозначает ! в данном контексте?
функции возвращают значение TRUE, a !TRUE=FALSE?

других вариантов у меня нет)))

п.с. у меня 8.35 утра, сейчас пойду спать, надеюсь усну не мучаясь этим вопросом)))
#367

Всё нашёл функцию ArrayResize!!!
И вот так можно контролировать индекс массива через внешнюю переменную

extern int N 100;
double a[];

int start(){

int count = ArrayResize(a,N);

for(count=0; count
а[count]=iLow(NULL,0,N);

}

}return(0);





Добавлено: 09-10-2013 01:42:10


Всем привет, читая код экспертов уже несколько раз встречал фразы типа:


while (!IsTradeAllowed()) Sleep(5000);
if(!IsConnected())


Вопрос, что обозначает ! в данном контексте?
функции возвращают значение TRUE, a !TRUE=FALSE?

других вариантов у меня нет)))

п.с. у меня 8.35 утра, сейчас пойду спать, надеюсь усну не мучаясь этим вопросом)))



(==) - если равно?
(!=) - если не равно!
If(count != 0) // если не равно 0 то....

Изменено 9 октября, 2013 пользователем elruso

Автор#368


Всё нашёл функцию ArrayResize!!!
И вот так можно контролировать индекс массива через внешнюю переменную

extern int N 100;
double a[];

int start(){

int count = ArrayResize(a,N);

for(count=0; count
а[count]=iLow(NULL,0,N);

}

}return(0);





Добавлено: 09-10-2013 01:42:10


Всем привет, читая код экспертов уже несколько раз встречал фразы типа:


while (!IsTradeAllowed()) Sleep(5000);
if(!IsConnected())


Вопрос, что обозначает ! в данном контексте?
функции возвращают значение TRUE, a !TRUE=FALSE?

других вариантов у меня нет)))

п.с. у меня 8.35 утра, сейчас пойду спать, надеюсь усну не мучаясь этим вопросом)))



(==) - если равно?
(!=) - если не равно!
If(count != 0) // если не равно 0 то....


Всё верно, дружище!
Так держать! :)
#369



Всё нашёл функцию ArrayResize!!!
И вот так можно контролировать индекс массива через внешнюю переменную

extern int N 100;
double a[];

int start(){

int count = ArrayResize(a,N);

for(count=0; count
а[count]=iLow(NULL,0,N);

}

}return(0);





Добавлено: 09-10-2013 01:42:10


Всем привет, читая код экспертов уже несколько раз встречал фразы типа:


while (!IsTradeAllowed()) Sleep(5000);
if(!IsConnected())


Вопрос, что обозначает ! в данном контексте?
функции возвращают значение TRUE, a !TRUE=FALSE?

других вариантов у меня нет)))

п.с. у меня 8.35 утра, сейчас пойду спать, надеюсь усну не мучаясь этим вопросом)))



(==) - если равно?
(!=) - если не равно!
If(count != 0) // если не равно 0 то....


Всё верно, дружище!
Так держать! :)


Xbms СПАСИБО! :d
#370

Здравствуйте. Я посмотрел 3 видео урок. Огромное спасибо за уроки. По данному примеру пробую написать что нибудь свое)) В моей версии при прохождении цены верхней границы TMA открывается ордер на Бай. При быстрой движении цены срабатывает тейк профит допустим в 15 пунктов и тут же открывается другой ордер на бай, но при этом до верхней границе TMA 10 пунктов. Как можно сделать так чтобы ордер открывался только на границе TMA или +2-3 пункта.

#371


Здравствуйте. Я посмотрел 3 видео урок. Огромное спасибо за уроки. По данному примеру пробую написать что нибудь свое)) В моей версии при прохождении цены верхней границы TMA открывается ордер на Бай. При быстрой движении цены срабатывает тейк профит допустим в 15 пунктов и тут же открывается другой ордер на бай, но при этом до верхней границе TMA 10 пунктов. Как можно сделать так чтобы ордер открывался только на границе TMA или +2-3 пункта.



double pAsk  =  Ask + DistanceSet*Point;


DistanceSet это внешняя переменная int! и вставишь pAsk когда напишишь OrderSend(Symbol(), OP_BUYSTOP, Lots, pAsk, Slippage................... ;)
Автор#372


Здравствуйте. Я посмотрел 3 видео урок. Огромное спасибо за уроки. По данному примеру пробую написать что нибудь свое)) В моей версии при прохождении цены верхней границы TMA открывается ордер на Бай. При быстрой движении цены срабатывает тейк профит допустим в 15 пунктов и тут же открывается другой ордер на бай, но при этом до верхней границе TMA 10 пунктов. Как можно сделать так чтобы ордер открывался только на границе TMA или +2-3 пункта.



Несколько сумбурно написано, видать была спешка :)
Я понял так: Цена "проскочила" верхний канал ТМА, у тебя открылся BUY, далее он закрылся через 15 пунктов, далее ты пишешь, что до верхней границы ещё 10 пунктов... Хммм... Насколько я знаю ТМА, сразу он не скорректируется выше цены, а ещё пока побудет внизу. Отсюда выходит, что вопрос не имеет смысла.

А в остальном elruso практически прав, ставлю плюс, быстро схватываешь, молодец.
Есть потенциал, учись дальше! :)

Только один момент... pAsk нужно привести к нормальному виду (NormalizeDouble), иначе будет ошибка при установке ордера.

#373



Здравствуйте. Я посмотрел 3 видео урок. Огромное спасибо за уроки. По данному примеру пробую написать что нибудь свое)) В моей версии при прохождении цены верхней границы TMA открывается ордер на Бай. При быстрой движении цены срабатывает тейк профит допустим в 15 пунктов и тут же открывается другой ордер на бай, но при этом до верхней границе TMA 10 пунктов. Как можно сделать так чтобы ордер открывался только на границе TMA или +2-3 пункта.



Несколько сумбурно написано, видать была спешка :)
Я понял так: Цена "проскочила" верхний канал ТМА, у тебя открылся BUY, далее он закрылся через 15 пунктов, далее ты пишешь, что до верхней границы ещё 10 пунктов... Хммм... Насколько я знаю ТМА, сразу он не скорректируется выше цены, а ещё пока побудет внизу. Отсюда выходит, что вопрос не имеет смысла.

А в остальном elruso практически прав, ставлю плюс, быстро схватываешь, молодец.
Есть потенциал, учись дальше! :)


Ваша школа Xbms :d

Добавлено: 09-10-2013 20:52:39

Xbms я хотел спросить у Вас, в разделе советники на сайте в конце описания практически каждого советника есть такая фраза:
Цитата

Для корректной работы советника торговый терминал должен быть включенным с открытия рынка вечером в воскресенье до его закрытия вечером в пятницу.


А в чём проблема я не понимаю? Вы можете объяснить этот нюанс?
Допустим мой советник торгует толко 3 часа в азиатскую сессию да или любую другую какая разница, то есть он не торгует 24 часа в сутки, всего 3, что я не могу открыть терминал ну допустим за час раньше установить советник и пойти спокойно спать? Ну а утром я его сниму допустим!!! А сегодня им торговать не буду , но завтра вечером я его опять поставлю!!! в чём проблема не пойму? С кодом что-то? Он что какой-то временный учёт ведёт какимто оброзом и может ошибиться? Что может случиться?

Изменено 10 октября, 2013 пользователем elruso

#374


А в чём проблема я не понимаю? Вы можете объяснить этот нюанс?
Допустим мой советник торгует толко 3 часа в азиатскую сессию да или любую другую какая разница, то есть он не торгует 24 часа в сутки, всего 3, что я не могу открыть терминал ну допустим за час раньше установить советник и пойти спокойно спать? Ну а утром я его сниму допустим!!! А сегодня им торговать не буду , но завтра вечером я его опять поставлю!!! в чём проблема не пойму? С кодом что-то? Он что какой-то временный учёт ведёт какимто оброзом и может ошибиться? Что может случиться?


Видимо в том, что 99% людей используют советник, для автоматической торговли, и не имеют желания каждый день его дергать без нужды.
а Вы являетесь исключением, раз хотите вставать ночью и включать его.
Всё же просто. Но и никто не мешает включать\выключать когда хочется.
Это совет, а не четкое правило.
#375



А в чём проблема я не понимаю? Вы можете объяснить этот нюанс?
Допустим мой советник торгует толко 3 часа в азиатскую сессию да или любую другую какая разница, то есть он не торгует 24 часа в сутки, всего 3, что я не могу открыть терминал ну допустим за час раньше установить советник и пойти спокойно спать? Ну а утром я его сниму допустим!!! А сегодня им торговать не буду , но завтра вечером я его опять поставлю!!! в чём проблема не пойму? С кодом что-то? Он что какой-то временный учёт ведёт какимто оброзом и может ошибиться? Что может случиться?


Видимо в том, что 99% людей используют советник, для автоматической торговли, и не имеют желания каждый день его дергать без нужды.
а Вы являетесь исключением, раз хотите вставать ночью и включать его.
Всё же просто. Но и никто не мешает включать\выключать когда хочется.
Это совет, а не четкое правило.


Что Вы хотите сказать 99% людей платят услугу VPS сервера? или держат свои компьютера включёнными неделями? хаха! не понял я твой ответ дружище! ну до ладно!!!

Для публикации сообщений создайте учётную запись или авторизуйтесь

Перейти к списку тем
Форум · 2.0.20260627.0025