Forex Форум ДЦ Форекс для тебя: Общие вопросы. - Forex Форум ДЦ Форекс для тебя

Перейти к содержимому

Digg Del.ico.us Slashdot Technorati furl Reddit Facebook Fark Google Magnolia Wink Yahoo Netscape
  • (45 Страниц)
  • +
  • « Первая
  • 42
  • 43
  • 44
  • 45
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Общие вопросы.

#861 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 19 июля 2010 - 11:34

Просмотр сообщения777sheff (19 июля 2010 - 13:30) писал:

А ещё можешь посмотреть вот здесь, тебе это может очень даже пригодиться :ok:

Эта методика у меня есть и даже советник работающий по этому принципу. Не знаю как это может мне помочь писать на MQL4?
0

#862 Пользователь офлайн   BigGun Иконка

  • финансист
  • Группа: Пользователь
  • Сообщений: 200
  • Регистрация: 17 марта 09

Отправлено 21 июля 2010 - 12:52

Никто демо-версию не получал с этого мониторинга?
ONIX-TRADE.NET

если кто то запрашивал - выкладывайте )))
0

#863 Пользователь онлайн   juchkov Иконка

  • финансист
  • Группа: Пользователь
  • Сообщений: 198
  • Регистрация: 25 июня 09

Отправлено 21 июля 2010 - 18:25

Добрый день всем.
Я изучаю программирование, и столкнулся вот с какой проблемой. Как подключить к советнику индикатор вот такого типа:
Прикрепленный файл  super fixed.mq4 (5,87К)
Количество загрузок:: 9
Но подключить не абы как, типа простой МАшки, а так, чтобы можно было использовать все сигналы, выдаваемые этим индикатором.
Если для этого его нужно вживлять в тело советника, то посоветуйте, как это лучше сделать.
Заранее спасибо.

PS Если где-то этот вопрос уже рассматривался, то прошу дать ссылку, т.к. я найти не мог.
Можно, конечно и помолчать. Но если хочешь найти истину, придется поспорить!
Индикаторы( правильнее ,индюки) - программы, фиксирующие прошлое, отвлекающие трейдера от настоящего, и не имеющие ни какого отношения к будущему.
0

#864 Пользователь офлайн   Kirill Иконка

  • Модератор раздела MQL4
  • Группа: Модератор
  • Сообщений: 1 318
  • Регистрация: 03 июля 08
  • Пол:Мужчина

Отправлено 21 июля 2010 - 19:14

Просмотр сообщенияjuchkov (21 июля 2010 - 19:25) писал:

Добрый день всем.
Я изучаю программирование, и столкнулся вот с какой проблемой. Как подключить к советнику индикатор вот такого типа:
Прикрепленный файл super fixed.mq4
Но подключить не абы как, типа простой МАшки, а так, чтобы можно было использовать все сигналы, выдаваемые этим индикатором.
Если для этого его нужно вживлять в тело советника, то посоветуйте, как это лучше сделать.
Заранее спасибо.

PS Если где-то этот вопрос уже рассматривался, то прошу дать ссылку, т.к. я найти не мог.


Приветствую!

Посмотрел Ваш индикатор. Если под сигналами Вы имеете ввиду сигнальные линии, то делается это просто - через iCustom(). Если же Вы говорите про постоянные Alert'ы, которые он выдаёт, то реализация намного сложнее - надо построчно переносить код индикатора в советник, причём осмысленно. Причём необходимо учесть, что в советниках нет буферов.

Кирилл.
Полностью механическая торговля. Доверительное управление от $5000.
StockProgrammer@mail.ru
Виртуальный сервер (VPS) для автоматической торговли.
0

#865 Пользователь онлайн   juchkov Иконка

  • финансист
  • Группа: Пользователь
  • Сообщений: 198
  • Регистрация: 25 июня 09

Отправлено 21 июля 2010 - 19:29

Просмотр сообщенияKirill (21 июля 2010 - 20:14) писал:

Приветствую!

Посмотрел Ваш индикатор. Если под сигналами Вы имеете ввиду сигнальные линии, то делается это просто - через iCustom(). Если же Вы говорите про постоянные Alert'ы, которые он выдаёт, то реализация намного сложнее - надо построчно переносить код индикатора в советник, причём осмысленно. Причём необходимо учесть, что в советниках нет буферов.

Кирилл.

Да, меня интересуют именно Alert'ы. Как я понял простым подключением их от туда не выцепить. Тогда мне очень интересно, как грамотно встроить индикатор в советник, плюс проблема с буферами. Вместо них можно использовать массивы, или я что-то не допонимаю?
Вопрос возник в связи с тем, что имел место случай некорректного подключения, а врезультате решили, что плохой индикатор. Я хочу это опровергнуть, да и научиться обращаться с подобными индикаторами.

Юрий.
Можно, конечно и помолчать. Но если хочешь найти истину, придется поспорить!
Индикаторы( правильнее ,индюки) - программы, фиксирующие прошлое, отвлекающие трейдера от настоящего, и не имеющие ни какого отношения к будущему.
0

#866 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 22 июля 2010 - 10:33

Здравствуйте. Я хотел бы подробнейшим образом изучить код советника илан хило рсай, кто поможет?

Прикрепленные файлы


0

#867 Пользователь офлайн   Kirill Иконка

  • Модератор раздела MQL4
  • Группа: Модератор
  • Сообщений: 1 318
  • Регистрация: 03 июля 08
  • Пол:Мужчина

Отправлено 22 июля 2010 - 16:57

Просмотр сообщенияjuchkov (21 июля 2010 - 20:29) писал:

Да, меня интересуют именно Alert'ы. Как я понял простым подключением их от туда не выцепить. Тогда мне очень интересно, как грамотно встроить индикатор в советник, плюс проблема с буферами. Вместо них можно использовать массивы, или я что-то не допонимаю?
Вопрос возник в связи с тем, что имел место случай некорректного подключения, а врезультате решили, что плохой индикатор. Я хочу это опровергнуть, да и научиться обращаться с подобными индикаторами.

Юрий.


Тут я Вам не смогу дать точного алгоритма действий. К сожалению... Каждый индикатор надо отдельно обрабатывать, чтобы внедрить его в советник. Я такое проделывал один раз - с индикатором Heiken Ashi. Поверьте, это непросто. Основная проблема как раз и заключается в том, что буферы нельзя просто-напросто заменить массивами. Буферы имеют обратную индексацию + сдвигаются при каждом появлении нового бара. Массивы по умолчанию такими свойствами не обладают.
Полностью механическая торговля. Доверительное управление от $5000.
StockProgrammer@mail.ru
Виртуальный сервер (VPS) для автоматической торговли.
0

#868 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 31 июля 2010 - 13:33

Прошла неделя а воз и ныне там - ветка дохлая.
0

#869 Пользователь офлайн   Kirill Иконка

  • Модератор раздела MQL4
  • Группа: Модератор
  • Сообщений: 1 318
  • Регистрация: 03 июля 08
  • Пол:Мужчина

Отправлено 02 августа 2010 - 07:45

Просмотр сообщенияMezon (22 июля 2010 - 11:33) писал:

Здравствуйте. Я хотел бы подробнейшим образом изучить код советника илан хило рсай, кто поможет?


Просмотр сообщенияMezon (31 июля 2010 - 14:33) писал:

Прошла неделя а воз и ныне там - ветка дохлая.



На конкретные вопросы даются конкретные ответы и советы, а для обощённых пожеланий тут, действительно, места нет.
Полностью механическая торговля. Доверительное управление от $5000.
StockProgrammer@mail.ru
Виртуальный сервер (VPS) для автоматической торговли.
0

#870 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 16:32

Просмотр сообщенияKirill (02 августа 2010 - 10:45) писал:

На конкретные вопросы даются конкретные ответы и советы, а для обощённых пожеланий тут, действительно, места нет.

Как еще конкретней поставить вопрос? Я хочу изучить код советника илан хило рсай чтобы в коде было подробное описание что и зачем. Например в нем указана функция OpenPendingOrder которой нет ни в одном учебнике а есть OrderSend при замене компилятор выдает ошибку (47штук)... и еще один момент с этим куском кода PrevCl = iHigh(Symbol(), 0, 1);
CurrCl = iLow(Symbol(), 0, 2);
SellLimit = Bid;
BuyLimit = Ask;
if (!ShortTrade && !LongTrade) {
NumOfTrades = total;
iLots = NormalizeDouble(Lots * MathPow(LotExponent, NumOfTrades), lotdecimal);
if (PrevCl > CurrCl) {
что такое PrevCl и CurrCl и что им присваивается? при if (PrevCl > CurrCl) 99% сделок открываются в селл , если поменять > на < то 99% сделок открываются в бай , как в коде прописать чтобы сделки открывались равномерно или по ситуации на рынке?
0

#871 Пользователь офлайн   neama Иконка

  • гуру финансовых наук
  • Группа: Пользователь
  • Сообщений: 1 107
  • Регистрация: 19 июня 09
  • Пол:Мужчина
  • Город:КишингДаун
  • Интересы:разные

Отправлено 02 августа 2010 - 17:35

Просмотр сообщенияMezon (02 августа 2010 - 16:32) писал:

Как еще конкретней поставить вопрос? Я хочу изучить код советника илан хило рсай чтобы в коде было подробное описание что и зачем. Например в нем указана функция OpenPendingOrder которой нет ни в одном учебнике а есть OrderSend при замене компилятор выдает ошибку (47штук)... и еще один момент с этим куском кода PrevCl = iHigh(Symbol(), 0, 1);
CurrCl = iLow(Symbol(), 0, 2);
SellLimit = Bid;
BuyLimit = Ask;
if (!ShortTrade && !LongTrade) {
NumOfTrades = total;
iLots = NormalizeDouble(Lots * MathPow(LotExponent, NumOfTrades), lotdecimal);
if (PrevCl > CurrCl) {
что такое PrevCl и CurrCl и что им присваивается? при if (PrevCl > CurrCl) 99% сделок открываются в селл , если поменять > на < то 99% сделок открываются в бай , как в коде прописать чтобы сделки открывались равномерно или по ситуации на рынке?

ticket = OpenPendingOrder(1, iLots, Bid, slip, Ask, 0, 0, EAName + "-" + NumOfTrades, MagicNumber, 0, HotPink); - в данном случее это вызов функции.
int OpenPendingOrder(int pType, double pLots, double pPrice, int pSlippage, double pr, int sl, int tp, string pComment, int pMagic, int pDatetime, color pColor) 
{
int ticket = 0;
int err = 0;
int c = 0;
int NumberOfTries = 100;
switch (pType) {
case 2:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYLIMIT, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(1000);
}
break;
case 4:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYSTOP, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 0:
for (c = 0; c < NumberOfTries; c++) {
RefreshRates();
ticket = OrderSend(Symbol(), OP_BUY, pLots, Ask, pSlippage, StopLong(Bid, sl), TakeLong(Ask, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 3:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLLIMIT, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 5:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLSTOP, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 1:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELL, pLots, Bid, pSlippage, StopShort(Ask, sl), TakeShort(Bid, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
}
return (ticket);
}


как работает эта функция смотри мой перевод илана. там эта функция частично разжована с мкл на русский.

что такое PrevCl и CurrCl.

PrevCl = iHigh(Symbol(), 0, 1); максимальное значение преведущей свечи.
CurrCl = iLow(Symbol(), 0, 2); минимальное значение пред пред свечи.
никогда не спорьте с дураком(то есть со мной), люди могут не заметить между нами разницы.
ежели у тебя пробило фонтан красноречия - заткни его, не позорься.
0

#872 Пользователь офлайн   Kirill Иконка

  • Модератор раздела MQL4
  • Группа: Модератор
  • Сообщений: 1 318
  • Регистрация: 03 июля 08
  • Пол:Мужчина

Отправлено 02 августа 2010 - 17:40

Просмотр сообщенияMezon (02 августа 2010 - 17:32) писал:

... Например в нем указана функция OpenPendingOrder которой нет ни в одном учебнике а есть OrderSend при замене компилятор выдает ошибку (47штук)...


OpenPendingOrder() - это пользовательская ф-я, описанная в коде самого советника. Очевидно её нет в учебниках. Заменять на OrderSend() бессмысленно - это разные функции.
Думаю, Вам не поможет подробное описание указанного кода. Я бы Вам посоветовал что-нибудь попроще. И для начала прочитайте книжку по MQL4 или мои уроки. В частности, урок №7. Многие вопросы отпадут сами собой.

Кирилл.
Полностью механическая торговля. Доверительное управление от $5000.
StockProgrammer@mail.ru
Виртуальный сервер (VPS) для автоматической торговли.
0

#873 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 18:38

Просмотр сообщенияKirill (02 августа 2010 - 20:40) писал:

OpenPendingOrder() - это пользовательская ф-я, описанная в коде самого советника. Очевидно её нет в учебниках. Заменять на OrderSend() бессмысленно - это разные функции.
Думаю, Вам не поможет подробное описание указанного кода. Я бы Вам посоветовал что-нибудь попроще. И для начала прочитайте книжку по MQL4 или мои уроки. В частности, урок №7. Многие вопросы отпадут сами собой.

Кирилл.

Я не понимаю что написано в книжках...(уже дошел до нервного срыва там пишут программисты для программистов, которым и без книжки все понятно) там примеры другие. У меня конкретный пример и я хочу с ним разобраться. Тем более в обеих книжка есть OrderSend и я хочу интересующий меня код привести к класике.
0

#874 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 18:45

Просмотр сообщенияneama (02 августа 2010 - 20:35) писал:

ticket = OpenPendingOrder(1, iLots, Bid, slip, Ask, 0, 0, EAName + "-" + NumOfTrades, MagicNumber, 0, HotPink); - в данном случее это вызов функции.
int OpenPendingOrder(int pType, double pLots, double pPrice, int pSlippage, double pr, int sl, int tp, string pComment, int pMagic, int pDatetime, color pColor) 
{
int ticket = 0;
int err = 0;
int c = 0;
int NumberOfTries = 100;
switch (pType) {
case 2:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYLIMIT, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(1000);
}
break;
case 4:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYSTOP, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 0:
for (c = 0; c < NumberOfTries; c++) {
RefreshRates();
ticket = OrderSend(Symbol(), OP_BUY, pLots, Ask, pSlippage, StopLong(Bid, sl), TakeLong(Ask, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 3:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLLIMIT, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 5:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLSTOP, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 1:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELL, pLots, Bid, pSlippage, StopShort(Ask, sl), TakeShort(Bid, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
}
return (ticket);
}


как работает эта функция смотри мой перевод илана. там эта функция частично разжована с мкл на русский.

что такое PrevCl и CurrCl.

PrevCl = iHigh(Symbol(), 0, 1); максимальное значение преведущей свечи.
CurrCl = iLow(Symbol(), 0, 2); минимальное значение пред пред свечи.

Вот это мне и непонятно нет такой функции. я ее хочу заменить на OrderSend и еще в этом блоке везде стоят буковки р тоже не пнятно что это такое я их удалил (компилятор дает ошибку на ошибке)?
0

#875 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 18:51

Просмотр сообщенияKirill (02 августа 2010 - 20:40) писал:

OpenPendingOrder() - это пользовательская ф-я, описанная в коде самого советника. Очевидно её нет в учебниках. Заменять на OrderSend() бессмысленно - это разные функции.
Думаю, Вам не поможет подробное описание указанного кода. Я бы Вам посоветовал что-нибудь попроще. И для начала прочитайте книжку по MQL4 или мои уроки. В частности, урок №7. Многие вопросы отпадут сами собой.

Кирилл.

Вопросов будет еще больше вот классическая функция int OrderSend (string symbol, int cmd, double volume, double price, int slippage, double stoploss,double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)
к которой я хочу привести весь код - неполучается.
0

#876 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 19:16

Просмотр сообщенияneama (02 августа 2010 - 20:35) писал:

ticket = OpenPendingOrder(1, iLots, Bid, slip, Ask, 0, 0, EAName + "-" + NumOfTrades, MagicNumber, 0, HotPink); - в данном случее это вызов функции.
int OpenPendingOrder(int pType, double pLots, double pPrice, int pSlippage, double pr, int sl, int tp, string pComment, int pMagic, int pDatetime, color pColor) 
{
int ticket = 0;
int err = 0;
int c = 0;
int NumberOfTries = 100;
switch (pType) {
case 2:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYLIMIT, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(1000);
}
break;
case 4:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_BUYSTOP, pLots, pPrice, pSlippage, StopLong(pr, sl), TakeLong(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 0:
for (c = 0; c < NumberOfTries; c++) {
RefreshRates();
ticket = OrderSend(Symbol(), OP_BUY, pLots, Ask, pSlippage, StopLong(Bid, sl), TakeLong(Ask, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 3:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLLIMIT, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 5:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELLSTOP, pLots, pPrice, pSlippage, StopShort(pr, sl), TakeShort(pPrice, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
break;
case 1:
for (c = 0; c < NumberOfTries; c++) {
ticket = OrderSend(Symbol(), OP_SELL, pLots, Bid, pSlippage, StopShort(Ask, sl), TakeShort(Bid, tp), pComment, pMagic, pDatetime, pColor);
err = GetLastError();
if (err == 0/* NO_ERROR */) break;
if (!(err == 4/* SERVER_BUSY */ || err == 137/* BROKER_BUSY */ || err == 146/* TRADE_CONTEXT_BUSY */ || err == 136/* OFF_QUOTES */)) break;
Sleep(5000);
}
}
return (ticket);
}


как работает эта функция смотри мой перевод илана. там эта функция частично разжована с мкл на русский.

что такое PrevCl и CurrCl.

PrevCl = iHigh(Symbol(), 0, 1); максимальное значение преведущей свечи.
CurrCl = iLow(Symbol(), 0, 2); минимальное значение пред пред свечи.

С этим блоком тоже непонятки: почему берется у одной свечи хай а у другой лоу? наверно можно взять у обоих хай?
0

#877 Пользователь офлайн   neama Иконка

  • гуру финансовых наук
  • Группа: Пользователь
  • Сообщений: 1 107
  • Регистрация: 19 июня 09
  • Пол:Мужчина
  • Город:КишингДаун
  • Интересы:разные

Отправлено 02 августа 2010 - 19:37

Просмотр сообщенияMezon (02 августа 2010 - 19:16) писал:

С этим блоком тоже непонятки: почему берется у одной свечи хай а у другой лоу? наверно можно взять у обоих хай?

это уже называется тролить :)
я могу ответить о назначении функций или операторов но что конкретно в виду имел програмист увы не смогу.

откройте любой мой советник. :)

я вам раскужу и почему так и для чего :)
никогда не спорьте с дураком(то есть со мной), люди могут не заметить между нами разницы.
ежели у тебя пробило фонтан красноречия - заткни его, не позорься.
0

#878 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 21:09

Просмотр сообщенияneama (02 августа 2010 - 22:37) писал:

это уже называется тролить :)
я могу ответить о назначении функций или операторов но что конкретно в виду имел програмист увы не смогу.

откройте любой мой советник. :)

я вам раскужу и почему так и для чего :)

Я извиняюсь а какие советники Ваши? (название).
0

#879 Пользователь офлайн   Mezon Иконка

  • кандидат финансовых наук
  • Группа: Пользователь
  • Сообщений: 140
  • Регистрация: 19 июня 10

Отправлено 02 августа 2010 - 21:19

Просмотр сообщенияneama (02 августа 2010 - 22:37) писал:

это уже называется тролить :)
я могу ответить о назначении функций или операторов но что конкретно в виду имел програмист увы не смогу.

откройте любой мой советник. :)

я вам раскужу и почему так и для чего :)

Да действительно это сложновато - понять что имел ввиду другой человек без коментариев... я на бумаге перед собой нарисовал свечи обозначил хай лоу и ни чего не могу понять(логику из которой исходил программист), и почему берется не нулевая и первая свеча а вторая и первая??? Выводы неутешительные помимо программирования надо знать еще и "все остальное".
0

#880 Пользователь офлайн   neama Иконка

  • гуру финансовых наук
  • Группа: Пользователь
  • Сообщений: 1 107
  • Регистрация: 19 июня 09
  • Пол:Мужчина
  • Город:КишингДаун
  • Интересы:разные

Отправлено 02 августа 2010 - 21:27

Просмотр сообщенияMezon (02 августа 2010 - 21:19) писал:

Да действительно это сложновато - понять что имел ввиду другой человек без коментариев... я на бумаге перед собой нарисовал свечи обозначил хай лоу и ни чего не могу понять(логику из которой исходил программист), и почему берется не нулевая и первая свеча а вторая и первая??? Выводы неутешительные помимо программирования надо знать еще и "все остальное".


ну где-то так.

программа это четко отстроенный алгоритм. это правила работы.
никогда не спорьте с дураком(то есть со мной), люди могут не заметить между нами разницы.
ежели у тебя пробило фонтан красноречия - заткни его, не позорься.
0

Поделиться темой:


  • (45 Страниц)
  • +
  • « Первая
  • 42
  • 43
  • 44
  • 45
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему


Страница 1 из 1
Trackbacks
Trackback URL Trackback Date Total Hits
No trackbacks were found
Страница 1 из 1

Similar Topics
  Название темы Автор Статистика Последнее сообщение
Открытая тема (есть новые ответы) Иконка Мы ответим на все Ваши вопросы!
Мы ответим на все Ваши вопросы!
wwww Иконка
  • 1 Ответов
  • 85 Просмотров
Открытая тема (есть новые ответы) Иконка Вот решил создать , ЧАТ , где трейдеры могут обсуждать все свои вопросы .... samdex Иконка
  • 5 Ответов
  • 138 Просмотров
Горячая тема (есть новые ответы) Иконка Прикрепления Общие Вопросы. Kirill Иконка
  • 15 Ответов
  • 846 Просмотров
Горячая тема (нет новых ответов) Прикрепления Общие вопросы DeBug Иконка
  • 32 Ответов
  • 1 576 Просмотров
Открытая тема (нет новых ответов) Вопросы по советникам bastet Иконка
  • 0 Ответов
  • 207 Просмотров

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей