Sart:
Посоветуйте, пожалуйста, где можно почитать обсуждение обработки таких ситуаций экспертом.
И вообще, может ли эксперт обнаружить, что торговля шла какое-то время без него.....
С уважением - С.Д.
Обнаружить, что был обрыв связи можно по журналу, а вот обработать
такую ситуацию экспертом нельзя - сервер то оторван, нужно предусматривать
заранее защиту от подобного случая - стоп-лосс и т.п.
Посоветуйте, пожалуйста, где можно почитать обсуждение обработки таких ситуаций экспертом.
И вообще, может ли эксперт обнаружить, что торговля шла какое-то время без него.....
С уважением - С.Д.
FION:
А вот для чего такие функции IsConnected(), IsExpertEnable(). Если, например, соединение есть, то IsConnected() скажет
нам, что оно есть, а если его нет, то и управление на IsConnected() никак
не попадет...и ничего она нам сказать не сможет....Sart:
Посоветуйте, пожалуйста, где можно почитать обсуждение обработки таких ситуаций экспертом.
И вообще, может ли эксперт обнаружить, что торговля шла какое-то время без него.....
С уважением - С.Д.
Обнаружить, что был обрыв связи можно по журналу, а вот обработать
такую ситуацию экспертом нельзя - сервер то оторван, нужно предусматривать
заранее защиту от подобного случая - стоп-лосс и т.п. Посоветуйте, пожалуйста, где можно почитать обсуждение обработки таких ситуаций экспертом.
И вообще, может ли эксперт обнаружить, что торговля шла какое-то время без него.....
С уважением - С.Д.
Иначе говоря вопрос такой - может ли эксперт получать управление от терминала не по приходу тика, а как-нибудь иначе ?
С уважением - С.Д.
некоторые шутники пишут бесконечный цикл, который запускается
по риходу первого тика, а потом в цикли и используют IsConnected()
Loky:
некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
Иначе говоря, получили управление один раз и навсегда ?некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
Sart:
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
Да нет все проще , советник будет обрабатывать переменные с тактовой
частотой 1/Sleep, но при отсутствии связи воздествовать на сервер
не получится.
Loky:
некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
Иначе говоря, получили управление один раз и навсегда ?некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
Sart:
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
а зачем тики отслеживать? тебе нужен момент прихода тика? переменные
Bid и Ask в них последняя цена.
Loky:
некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
Иначе говоря, получили управление один раз и навсегда ?некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
FION:
Единственное, что мы можем полезного сделать при разрыве связи-зафиксировать
это событие, а при возобновлении связи распознать ситуацию
первой передачи управления после возобновления связи, что-то
в таков духе:Sart:
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
Да нет все проще , советник будет обрабатывать переменные с тактовой
частотой 1/Sleep, но при отсутствии связи воздествовать на сервер
не получится. Loky:
некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
Иначе говоря, получили управление один раз и навсегда ?некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
/ попробуем полностью захватывать управление по первому тику и возвращать управление терминалу только в случае случае разрыва связи, // зафиксировав наличие разрыва связи в переменной int ConnectOnOff =0; 0(CONNECT_OFF)-связи нет, 1(CONNECT_ON)-связь есть. // после возобновления связи терминал опять передаст нам управления по первому пришедшему от торгового сервера тику, а мы опять // полностью захватываем управление. // ясно, что после захвата управления, нам уже сигналов терминала о приходе новых тиков не дождаться, поэтому // мы самостоятельно каждую секунду будем передавать управление на начало функции start(). // в самом начале кода этой функции, мы проверяем тип входа // - когда ConnectOnOff =CONNECT_OFF, значит мы получили управление после интервала отсутсвия связи от терминала и следует, как-то учесть // этот факт в дальнейшей работе эксперта обратившись к нашей функции RestartConnect() // - когда ConnectOnOff =CONNECT_ON - все нормально, работаем штатно(не забыть только в init() поставить ConnectOnOff = CONNECT_ON) // таким образом, имееем такое строение експерта: int start() while(!IsStopped()) { RefreshRates(); //-------------------------- if (IsConnected) { if (ConnectOnOff == CONNECT_OFF) {ConnectOnOff = CONNECT_ON; RestartConnect();} // обычный наш код } else { ConnectOnOff == CONNECT_OFF... //заметим это на будущее и учтем при входе после возобновления связи break; } //-------------------------- Sleep(1000); // 1 секунда } return(0); // возвращаем управление терминалу, когда связь возобновится , терминал по первому тику опять отдаст нам управление... }
Loky:
Да, действительно, спасибо, вы мне очень помогли своим первым
ответом про шутников. Все прояснилось.
Sart:
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
а зачем тики отслеживать? тебе нужен момент прихода тика? переменные
Bid и Ask в них последняя цена. Loky:
некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
Иначе говоря, получили управление один раз и навсегда ?некоторые шутники пишут бесконечный цикл, который запускается по риходу первого тика, а потом в цикли и используют IsConnected()
А потом типа Sleep(..) и продолжаем работать ?
А как это отражается на работе всего терминала и всего остального, что в нем работает ?
Есть какие-то критические моменты в таком захвате управления ?
И вообще, что-то можете посоветовать относительно такого метода. На первый-то взгляд вроде все нормально : терминал - это программа ,
которую я использую на компьютере единолично, никому другому не мешаю, с Торговым Сервером, тоже вроде никаких проблем .... .
Но вот странно, выходит я не возвратил управление терминалу. ..а теперь приходит очередной тик, и терминал не передает управление мне, поскольку управление и так уже у меня.
Получается, что я сам , в таком случае должен отслеживать тики. .......
С уважением - С.Д.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
И вообще, может ли эксперт обнаружить, что торговля шла какое-то время без него.....
Интересно, как в эксперте можно использовать функции определения состояния, такие, например, как IsConnected(), IsExpertEnable() и т.п., если он получает управление по приходу тика.
Ведь, если работа експерта запрещена (самим программистом), то ведь он не получает управления,
или, если нет соединения, то нет и тиков, и опять эксперт не получает управления ....
Странно как-то, что никто об этом не спрашивает.....
С уважением - С.Д.