Ответ
 
Опции темы
Старый 04.09.2013, 07:48   #381 (permalink)
 
Аватар для Юла
 
Регистрация: 12.06.2012
Адрес: Россия
Сообщений: 242
Репутация: 3286
Юла Юла Юла Юла Юла Юла Юла Юла Юла Юла Юла
Сказал(а) спасибо: 5,816
Поблагодарили 3,249 раз(а) в 576 сообщениях
Поинты: 146
Нет, не подходит, нужно закладывать формулы расчета в Excel , выводится только результат на график.
Юла на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 04.09.2013, 08:40   #382 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,283
Репутация: 1985
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 356
Поблагодарили 1,914 раз(а) в 1,084 сообщениях
Поинты: 1304
Отправить сообщение для Ugar с помощью ICQ
Сообщение от Юла Посмотреть сообщение
Нет, не подходит, нужно закладывать формулы расчета в Excel , выводится только результат на график.
В ячейках файла в таком случае находятся не результат, а формулы. При открытии файла будут извлечены именно они. Результат считает и отображает сам excel, в файле результатов нет.
Я посоветую эти формулы внести в код программы на mql, тогда excel вообще не нужен будет.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
AlexeyVik (04.09.2013), Юла (04.09.2013)
Старый 04.09.2013, 08:41   #383 (permalink)
Программист mql4 mql5
 
Аватар для AlexeyVik
 
Регистрация: 19.11.2009
Сообщений: 2,546
Репутация: 3663
AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik
Сказал(а) спасибо: 1,129
Поблагодарили 3,667 раз(а) в 1,482 сообщениях
Поинты: 2028
Сообщение от Юла Посмотреть сообщение
Нет, не подходит, нужно закладывать формулы расчета в Excel , выводится только результат на график.
Ну тогда напиши программку на VB. Язык встроенный в Excel, достаточно богат для таких задач. Пусть он вычисляет и записывает данные в csv а оттуда возьмёт МТ своими средствами.
Ну или, я-бы попробовал такую связку:
В книге Excel все вычисления а в файле csv (он со значком Excel и по умолчанию в нём открывается) поставить ссылку на результат вычисления, =книга,страница,ячейка. Может прокатит...

ps: ну вот, Андрей развеял мои надежды. Да, этого я не учёл. Тогда остаётся писать на VB.

Последний раз редактировалось AlexeyVik; 04.09.2013 в 08:43.
AlexeyVik на форуме   Ответить с цитированиемОтветить с цитированием  
3 пользователя(ей) сказали cпасибо:
eevviill (05.09.2013), Ugar (04.09.2013), Юла (04.09.2013)
Старый 04.09.2013, 09:29   #384 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,283
Репутация: 1985
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 356
Поблагодарили 1,914 раз(а) в 1,084 сообщениях
Поинты: 1304
Отправить сообщение для Ugar с помощью ICQ
Сообщение от AlexeyVik Посмотреть сообщение
Ну тогда напиши программку на VB. Язык встроенный в Excel, достаточно богат для таких задач. Пусть он вычисляет и записывает данные в csv а оттуда возьмёт МТ своими средствами.
Ну или, я-бы попробовал такую связку:
В книге Excel все вычисления а в файле csv (он со значком Excel и по умолчанию в нём открывается) поставить ссылку на результат вычисления, =книга,страница,ячейка. Может прокатит...

ps: ну вот, Андрей развеял мои надежды. Да, этого я не учёл. Тогда остаётся писать на VB.
Практически всё что считается в excel, можно посчитать в mql.
Но если мы не ищем лёгких путей, то можно написать прогу на VB.
А ещё можно программно запустить и открыть файл в экселе, снять скриншот с экрана, из графического файла распознать текст, преобразовать в дробные значения...

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (05.09.2013), Юла (04.09.2013)
Старый 04.09.2013, 12:38   #385 (permalink)
Программист mql4 mql5
 
Аватар для AlexeyVik
 
Регистрация: 19.11.2009
Сообщений: 2,546
Репутация: 3663
AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik
Сказал(а) спасибо: 1,129
Поблагодарили 3,667 раз(а) в 1,482 сообщениях
Поинты: 2028
Сообщение от Ugar Посмотреть сообщение
Практически всё что считается в excel, можно посчитать в mql.
Но если мы не ищем лёгких путей, то можно написать прогу на VB.
А ещё можно программно запустить и открыть файл в экселе, снять скриншот с экрана, из графического файла распознать текст, преобразовать в дробные значения...
Надеюсь это беззлобная подъё***
Не думаешь-же ты что реально так придёт кому-то в голову сделать...
В Excel есть волшебная клавиша F9 встаёшь на формулу нажимаешь на неё и вместо формулы результат вычисления. А программно перевести все результаты формул в числа совсем плёвое дело.
Ну не зря ведь человек хочет из Excel перетащить на график, значит есть тому причина. И нисколько этот вариант не сложней чем считать в MQL.
AlexeyVik на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Юла (04.09.2013)
Старый 04.09.2013, 13:14   #386 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,283
Репутация: 1985
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 356
Поблагодарили 1,914 раз(а) в 1,084 сообщениях
Поинты: 1304
Отправить сообщение для Ugar с помощью ICQ
Сообщение от AlexeyVik Посмотреть сообщение
Надеюсь это беззлобная подъё***
Не думаешь-же ты что реально так придёт кому-то в голову сделать...
В Excel есть волшебная клавиша F9 встаёшь на формулу нажимаешь на неё и вместо формулы результат вычисления. А программно перевести все результаты формул в числа совсем плёвое дело.
Ну не зря ведь человек хочет из Excel перетащить на график, значит есть тому причина. И нисколько этот вариант не сложней чем считать в MQL.
Да, никакой злобы. Это конечно шутка. А если кроме шуток, то можно вообще не использовать промежуточный CSV файл. Можно используя VB и виндовые библиотеки, через оперативку транслировать прямо в программу на MQL.
Только всё это наверное не для уроков по MQL. Вернее к урокам по MQL придётся прибавить уроки по VB.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 04.09.2013, 17:07   #387 (permalink)
Программист mql4 mql5
 
Аватар для AlexeyVik
 
Регистрация: 19.11.2009
Сообщений: 2,546
Репутация: 3663
AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik
Сказал(а) спасибо: 1,129
Поблагодарили 3,667 раз(а) в 1,482 сообщениях
Поинты: 2028
Сообщение от Ugar Посмотреть сообщение
Да, никакой злобы. Это конечно шутка. А если кроме шуток, то можно вообще не использовать промежуточный CSV файл. Можно используя VB и виндовые библиотеки, через оперативку транслировать прямо в программу на MQL.
Только всё это наверное не для уроков по MQL. Вернее к урокам по MQL придётся прибавить уроки по VB.
Ага... А потом С++, делфи, фортран... Ну и ещё чего нибудь.
А в моих словах главное было что подъё***, а что она беззлобная я и так понимал.
AlexeyVik на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Юла (04.09.2013)
Старый 05.09.2013, 06:16   #388 (permalink)
 
Аватар для Юла
 
Регистрация: 12.06.2012
Адрес: Россия
Сообщений: 242
Репутация: 3286
Юла Юла Юла Юла Юла Юла Юла Юла Юла Юла Юла
Сказал(а) спасибо: 5,816
Поблагодарили 3,249 раз(а) в 576 сообщениях
Поинты: 146
А у меня и без вас все получилось, сделала скрипт. В помощи не нуждаюсь.
Юла на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
AlexeyVik (05.09.2013), olezok (05.09.2013)
Старый 05.09.2013, 06:31   #389 (permalink)
Программист mql4 mql5
 
Аватар для AlexeyVik
 
Регистрация: 19.11.2009
Сообщений: 2,546
Репутация: 3663
AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik AlexeyVik
Сказал(а) спасибо: 1,129
Поблагодарили 3,667 раз(а) в 1,482 сообщениях
Поинты: 2028
Сообщение от Юла Посмотреть сообщение
А у меня и без вас все получилось, сделала скрипт. В помощи не нуждаюсь.
Молодца.
AlexeyVik на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (05.09.2013), olezok (05.09.2013)
Старый 08.10.2013, 00:27   #390 (permalink)
Местный знаток
 
Аватар для Milord
 
Регистрация: 26.03.2011
Сообщений: 596
Репутация: 705
Milord - Milord - Milord - Milord - Milord - Milord - Milord -
Сказал(а) спасибо: 897
Поблагодарили 702 раз(а) в 192 сообщениях
Поинты: 547
Сообщение от Ugar Посмотреть сообщение
Я никого лошарами не обзывал и не собираюсь учить кого то кодить. Уметь самому и уметь учить, это разные навыки. То что я умею писать программы ещё не означает что смогу кого то этому научить. И наоборот. Олимпийский чемпион завоёвывает золотые медали, а его тренер вряд ли сможет то же самое. Зато он смог обучить, натренеровать чемпиона. По этому, учит тот кто сам не может, это не обзывательство, а нормальная реальность.
Просто я подумал что если начинать с расширений файлов то до программирования вы долго не доберётесь. А между тем, начинающему программисту не терпится написать первую программу, пусть бестолковую, но работающую.
Ладно, прошу прощения что влез. Я уже говорил что учить не умею. Значит влез не в своё дело.
при всем уважении к вам как к программисту, хочу поспорить на счет олимпийских чемпионов и тренеров - в 99% случаев бывшие чемпионы становятся тренерами, ибо кто научит спорстсмена лучше , чем сам спортсмен прошедший эту школу с низу до верху, он досконально знает все препятствия на пути, ибо нет лучшего учителя чем жизнь...аналогично если начальник прошел путь от рабочего, он гораздо лучше во всем разбирается, чем выпускник ВУЗа.....

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
тестю советники, иногда пишу и дорабатываю их ...
ПУТЬ ДЛИННОЙ В 10000 МИЛЬ НАЧИНАЕТСЯ С 1 ШАГА (Лао Цзы)
Milord вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (10.10.2013)
Старый 10.10.2013, 08:01   #391 (permalink)
Dom
 
Аватар для Dom
 
Регистрация: 09.03.2009
Сообщений: 1,032
Репутация: 2474
Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom
Сказал(а) спасибо: 204
Поблагодарили 2,475 раз(а) в 783 сообщениях
Поинты: 178
Здравствуйте!Уважаемые программисты!Помогите пожалуйста!Я часто использую пользовательские функции Кирилла.У меня выставлено два противоположных ордера,один из них закрылся по TakeProfit,мне надо удалить второй.Я делаю так:
Код:
 if(isCloseLastPosByTake(NULL,-1,Magic)==true){
               if(ExistPositions(NULL,-1,Magic)==false){                                                         
       if(NumberOfOrders(NULL,-1,Magic)==1){
           DeleteOrders(NULL,-1,Magic);
           return(0);
      }}}
он не удаляется.Первая функция это:"Возвращает флаг закрытия последней позиции по тейку."Что я не так делаю?
И второй вопрос.Советник работает нормально,неделю,две,затем бах на спокойном рынке открывает позицию,противоположную той,которая запрограммирована.Я не знаю,как с этим бороться.
Dom вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 10.10.2013, 08:13   #392 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9025
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,679
Поблагодарили 9,025 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Dom Посмотреть сообщение
Здравствуйте!Уважаемые программисты!Помогите пожалуйста!Я часто использую пользовательские функции Кирилла.У меня выставлено два противоположных ордера,один из них закрылся по TakeProfit,мне надо удалить второй.Я делаю так:
Код:
 if(isCloseLastPosByTake(NULL,-1,Magic)==true){
               if(ExistPositions(NULL,-1,Magic)==false){                                                         
       if(NumberOfOrders(NULL,-1,Magic)==1){
           DeleteOrders(NULL,-1,Magic);
           return(0);
      }}}
он не удаляется.Первая функция это:"Возвращает флаг закрытия последней позиции по тейку."Что я не так делаю?
И второй вопрос.Советник работает нормально,неделю,две,затем бах на спокойном рынке открывает позицию,противоположную той,которая запрограммирована.Я не знаю,как с этим бороться.
Дом если бы это был не ты, то я бы почти нагрубил бы. Потому что есть соответсвующая ветка.
Противоположные это 2 отложки?
Рыночные?
Я бы решал это так.
Искал бы последний закрытый ордер. И если он закрытый по ТП, то
брал с него данные(бай или сел, если надо то лоты).
И потом бы сравнивал с последним открытым ордером.
Твоя проблема навреное в том. Глянь где есть
PHP код:
OrderClosePrice()==OrderTakeProfit() 
нормализируй их
PHP код:
NormalizeDouble(OrderClosePrice(),Digits)==NormalizeDouble(OrderTakeProfit(),Digits
Ах да. Я кажется понял. Если ты на ЕСН это делаешь, то там редко когда цена закрытия равна ТП или СЛ. Так что последний закрытый ордер прийдётся искать по коментарию к ордеру. Иксать буквы tp
Короче покажи функцию isCloseLastPosByTake

Последний раз редактировалось eevviill; 10.10.2013 в 08:17.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Dom (10.10.2013)
Старый 10.10.2013, 10:36   #393 (permalink)
Активный участник
 
Аватар для _SERG_
 
Регистрация: 21.07.2009
Сообщений: 259
Репутация: 81
_SERG_
Сказал(а) спасибо: 11
Поблагодарили 81 раз(а) в 67 сообщениях
Поинты: 300
Сообщение от Dom Посмотреть сообщение
Здравствуйте!Уважаемые программисты!Помогите пожалуйста!Я часто использую пользовательские функции Кирилла.У меня выставлено два противоположных ордера,один из них закрылся по TakeProfit,мне надо удалить второй.Я делаю так:
Код:
 if(isCloseLastPosByTake(NULL,-1,Magic)==true){
               if(ExistPositions(NULL,-1,Magic)==false){                                                         
       if(NumberOfOrders(NULL,-1,Magic)==1){
           DeleteOrders(NULL,-1,Magic);
           return(0);
      }}}
он не удаляется.Первая функция это:"Возвращает флаг закрытия последней позиции по тейку."Что я не так делаю?
И второй вопрос.Советник работает нормально,неделю,две,затем бах на спокойном рынке открывает позицию,противоположную той,которая запрограммирована.Я не знаю,как с этим бороться.
Про второй вопрос.

У меня такая ситуация встречалась, когда якобы случайно открывался ордер.
Пришлось проверять все переменные отвечающие за открытие позиций, и как они обновляются в советнике.
_SERG_ вне форума   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
Dom (10.10.2013), eevviill (10.10.2013)
Старый 10.10.2013, 11:44   #394 (permalink)
Dom
 
Аватар для Dom
 
Регистрация: 09.03.2009
Сообщений: 1,032
Репутация: 2474
Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom
Сказал(а) спасибо: 204
Поблагодарили 2,475 раз(а) в 783 сообщениях
Поинты: 178
Сообщение от eevviill Посмотреть сообщение
Дом если бы это был не ты, то я бы почти нагрубил бы. Потому что есть соответсвующая ветка.
Противоположные это 2 отложки?
Рыночные?
Я бы решал это так.
Искал бы последний закрытый ордер. И если он закрытый по ТП, то
брал с него данные(бай или сел, если надо то лоты).
И потом бы сравнивал с последним открытым ордером.
Твоя проблема навреное в том. Глянь где есть
PHP код:
OrderClosePrice()==OrderTakeProfit() 
нормализируй их
PHP код:
NormalizeDouble(OrderClosePrice(),Digits)==NormalizeDouble(OrderTakeProfit(),Digits
Ах да. Я кажется понял. Если ты на ЕСН это делаешь, то там редко когда цена закрытия равна ТП или СЛ. Так что последний закрытый ордер прийдётся искать по коментарию к ордеру. Иксать буквы tp
Короче покажи функцию isCloseLastPosByTake
Извините,что не в этой ветке,голова уже не соображает.Спасибо,что ответили,буду разбираться.Функция:
Код:
//+----------------------------------------------------------------------------+
//|  Версия   : 19.05.2008                                                     |
//|  Описание : Возвращает флаг закрытия последней позиции по тейку.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
bool isCloseLastPosByTake(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   ocp, otp;
  int      dg, i, j=-1, k=OrdersHistoryTotal();
  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) {
                t=OrderCloseTime();
                j=i;
              }
            }
          }
        }
      }
    }
  }
  if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
    dg=MarketInfo(sy, MODE_DIGITS);
    if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
    ocp=NormalizeDouble(OrderClosePrice(), dg);
    otp=NormalizeDouble(OrderTakeProfit(), dg);
    if (ocp==otp) return(True);
  }
  return(False);
}
Dom вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 10.10.2013, 12:00   #395 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9025
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,679
Поблагодарили 9,025 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Dom Посмотреть сообщение
Извините,что не в этой ветке,голова уже не соображает.Спасибо,что ответили,буду разбираться.Функция:
...
Ну значит так как я говорил. Потом сделаю проверку по коментарию.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Dom (10.10.2013)
Старый 10.10.2013, 12:55   #396 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9025
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,679
Поблагодарили 9,025 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от eevviill Посмотреть сообщение
Ну значит так как я говорил. Потом сделаю проверку по коментарию.

Скрытый текст

PHP код:
bool isCloseLastPosByTake(string sy=""int op=-1int mn=-1
{
int time_close;
int latest_closed_order;
for(
int h=OrdersHistoryTotal()-1;h>=0;h--)
{
if(
OrderSelect(h,SELECT_BY_POS,MODE_HISTORY))
{
if((
OrderSymbol()==sy || sy=="") && (OrderType()==op || op==-1) && (OrderMagicNumber()==mn || mn==-1))
 {
if(
OrderCloseTime()>time_close)
{
if(
OrderType()==OP_BUY || OrderType()==OP_SELL)
{
time_close=OrderCloseTime();
latest_closed_order=h;
}
}
}

}
 
 
 if(
OrderSelect(latest_closed_order,SELECT_BY_POS,MODE_HISTORY))
 {
 if(
StringFind(OrderComment(),"[tp]",0)!=-1)
 return(
true);
 }

  
  return(
False);

[свернуть]

Последний раз редактировалось eevviill; 10.10.2013 в 13:45.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Dom (10.10.2013)
Старый 10.10.2013, 17:28   #397 (permalink)
Dom
 
Аватар для Dom
 
Регистрация: 09.03.2009
Сообщений: 1,032
Репутация: 2474
Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom
Сказал(а) спасибо: 204
Поблагодарили 2,475 раз(а) в 783 сообщениях
Поинты: 178
Сообщение от eevviill Посмотреть сообщение

Скрытый текст

PHP код:
bool isCloseLastPosByTake(string sy=""int op=-1int mn=-1
{
int time_close;
int latest_closed_order;
for(
int h=OrdersHistoryTotal()-1;h>=0;h--)
{
if(
OrderSelect(h,SELECT_BY_POS,MODE_HISTORY))
{
if((
OrderSymbol()==sy || sy=="") && (OrderType()==op || op==-1) && (OrderMagicNumber()==mn || mn==-1))
 {
if(
OrderCloseTime()>time_close)
{
if(
OrderType()==OP_BUY || OrderType()==OP_SELL)
{
time_close=OrderCloseTime();
latest_closed_order=h;
}
}
}

}
 
 
 if(
OrderSelect(latest_closed_order,SELECT_BY_POS,MODE_HISTORY))
 {
 if(
StringFind(OrderComment(),"[tp]",0)!=-1)
 return(
true);
 }
 
 
  return(
False);

[свернуть]
eevviill!Нет слов.Огромное спасибо!Мне бы долго пришлось с этим разбираться.Премного благодарен!!!
Dom вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (10.10.2013)
Старый 10.10.2013, 17:46   #398 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9025
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,679
Поблагодарили 9,025 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от Dom Посмотреть сообщение
eevviill!Нет слов.Огромное спасибо!Мне бы долго пришлось с этим разбираться.Премного благодарен!!!
Пожалуйста. Но мне Гамбер(надеюсь правильно на руский транслировал) замечание сделал как лучше. Не порядковый номер записывать, а тикет.
PHP код:
latest_closed_order=OrderTicket();
}
}
}

}
 
 
 if(
OrderSelect(latest_closed_order,SELECT_BY_TICKET,MODE_HISTORY)) 
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Dom (11.10.2013)
Старый 10.10.2013, 23:38   #399 (permalink)
Местный знаток
 
Аватар для Milord
 
Регистрация: 26.03.2011
Сообщений: 596
Репутация: 705
Milord - Milord - Milord - Milord - Milord - Milord - Milord -
Сказал(а) спасибо: 897
Поблагодарили 702 раз(а) в 192 сообщениях
Поинты: 547
Сообщение от eevviill Посмотреть сообщение
1.3) {} (квадратные скобки) - применяются для начала фунции и конца.
1.4) () (скобки) - в них(не всегда) записываются свойства операции.
не вытерпел, извините, при всем уважении есть одна неточность, думаю для тех кто начинает изучать язык нельзя запоминать неверные значения...незнаю ваши слова или цитата от куда то, в любом случае это неверно, потому что еще из математики известно:
скобки [ ] называются квадратными, ибо они и похожи на квадрат,
скобки { } называются фигурными, потому что они реально фигурные, а не квадратные....надеюсь без обид, просто переживаю за тех кто запоминает неверные понятия...
а вот скобки ( ) - обычные скобки!

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
тестю советники, иногда пишу и дорабатываю их ...
ПУТЬ ДЛИННОЙ В 10000 МИЛЬ НАЧИНАЕТСЯ С 1 ШАГА (Лао Цзы)

Последний раз редактировалось Milord; 10.10.2013 в 23:57.
Milord вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (11.10.2013)
Старый 11.10.2013, 05:18   #400 (permalink)
Dom
 
Аватар для Dom
 
Регистрация: 09.03.2009
Сообщений: 1,032
Репутация: 2474
Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom Dom
Сказал(а) спасибо: 204
Поблагодарили 2,475 раз(а) в 783 сообщениях
Поинты: 178
Сообщение от eevviill Посмотреть сообщение
Пожалуйста. Но мне Гамбер(надеюсь правильно на руский транслировал) замечание сделал как лучше. Не порядковый номер записывать, а тикет.
PHP код:
latest_closed_order=OrderTicket();
}
}
}

}
 
 
 if(
OrderSelect(latest_closed_order,SELECT_BY_TICKET,MODE_HISTORY)) 
Понял!Спасибо!
Dom вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (11.10.2013)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 06:57. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO