Metatrader4 и 1С Предприятие 8.0 - страница 3

 
Вторая программа, вообще это достаточно расспространенные среди пофессионалов вещи, меня смущает что до сих пор никто не написал подобную систему к МТ4, (всмысле чтоб работала вместе с этим терминалом.) золотое дно однако...
 
Интересна точка зрения разработчиков, Слава или Ренат, как вы считаете, возможна работа советника в режиме тестирования, если он будет получать данные из другой программы, например в модуле советника это можно организовать так, при функции init() открываем 2 файла один для записи другой для чтения, при поступлении нового тика (1 раз в минуту), записываем в первый файл необходимые данные, и заходим в цикл для чтения результатов обработки из второго файла, при этом цикл прервется только после того как данные из файла будут прочитаны. помоему так должно работать в потоке тестера.

Работа через файлы, да еще и в режиме тестирования - это абсолютно тупиковый подход. Гораздо эффективнее использовать собственный код из DLL библиотек.

Кстати, я не понимаю - откуда взялась мысль о том, что 1С считает быстрее чем MQL4. Вот Rosh (как знаток 1С) уже пробовал прогнать простейший тест (его гоняли на MQL4, EasyLanguage, WLD, AmiBroker) на 1С и что получилось:

Rosh 23.06.05 13:15

Попутно пытался измерить скорость выполнения теста в 1С.Предприятии :)
Типов int и double там нет, но меня это не остановило. Запустил, попутно стал искать возможность измерить время выполнения. Не понадобилось. На глазок - минут 5 заняло :)

Там, где код на MQL4 отработал меньше чем за секунду, 1С подвисла на 5 минут???
"MQL4 , JDK1.4.2 и прочие : сравнение скорости"
 
Смотрите:

MQ4:
   int x;
   int strt=GetTickCount();
   for(int i=0;i<100000;i++){
      x=x+1;
   }
   Alert(GetTickCount()-strt);



VB6

   Dim x As Long
   Dim strt As Single
   strt = Timer
   For i = 1 To 100000
        x = x + 1
   Next
   MsgBox 1000 * (Timer - strt)



На MQ4 было выполнено ровно в 3 раза быстрее. На С++ кто-нибудь бы попробовал, а то у меня не установлен.

 

в init() открываем 2 файла один для записи другой для чтения....


Так точно работать не будет, так как вторая программа к открытому файлу не получит доступа. Следует на каждом тике открываться, считывать(или записывать), закрываться.
 
На MQ4 было выполнено ровно в 3 раза быстрее. На С++ кто-нибудь бы попробовал, а то у меня не установлен.

И это правильно. Мы же не зря трижды переписывали свой язык MQL (MQL - чистый интерпретатор, MQL2 - более эффективный интерпретатор, MQL4 - очень эффективный компилятор в байт-код).

И теперь на MQL4 можно без опасений писать сложную расчетную логику. Кроме того, наш терминал очень эффективно использует прогопроцессорность/многоядерность, что позволяет одновременно и независимо работать нескольким экспертам, запускать тестирование и продолжать работать с терминалом в обычном режиме.
 

Работа через файлы, да еще и в режиме тестирования - это абсолютно тупиковый подход. Гораздо эффективнее использовать собственный код из DLL библиотек.

Кстати, я не понимаю - откуда взялась мысль о том, что 1С считает быстрее чем MQL4. Вот Rosh (как знаток 1С) уже пробовал прогнать простейший тест (его гоняли на MQL4, EasyLanguage, WLD, AmiBroker) на 1С и что получилось:

Rosh 23.06.05 13:15

Попутно пытался измерить скорость выполнения теста в 1С.Предприятии :)
Типов int и double там нет, но меня это не остановило. Запустил, попутно стал искать возможность измерить время выполнения. Не понадобилось. На глазок - минут 5 заняло :)

Там, где код на MQL4 отработал меньше чем за секунду, 1С подвисла на 5 минут???
"MQL4 , JDK1.4.2 и прочие : сравнение скорости"


По приведенной вами ссылке нет ниодного топика где говорилось бы о сравнении с 1С 8,0 там обсуждается производительность разных платформ, но ни слова про 1С, может ссылка не та???
кроме того если 1С подвисает на 5 мин. на простейших тестах, то проблема скорее всего в железе, все же у этой программы тоже есть свои системные требования, а средства разработки там несравнимо лучше чем в MetaEditor например в конфигурации торговой системы написанной в 1С можно разработать полноценный интерфейс с использованием разнообразных списков значений, во время работы программы можно выводить диалог и предлагать пользователю выбирать одно из нескольких значений. можно ставить пароль на запуск торговой системы, хранить историю проведенных операций по видам, в разных журналах, и формировать по ним разнообразную гибкую отчетность в формате html или xls с использованием люых 3D графиков - и заметьте все это делается достаточно просто, но что самое главное там ничем не ограничена размерность и многомерность внутренних массивов данных, и одновременно в одном таком массиве можно обрабатывать данные разных типов, не берусь утверждать что на простейших тестах 1С 8,0 окажется быстрее чем МТ4, все же МТ4 больше подходит для реализации простейших задач, но я больше чем уверен в том месте где 1С справится за секунды МТ4 будет висеть час - МТ4 быстрая платформа на простейших тестах, но она не работает с таблицами данных так как это делает 1С.
 
Если честно я не совсем понимаю о чем мы спорим 1С 8.0 на сегодня одна из самых расспространенных платформ предназначена для автоматизации управления сложными бизнес-процессами, все серьезные крупные компании, холдинги и торговые организации в России и странах бывшего СНГ работают в 1С - думаю это о чем то говорит, то что она работает так же быстро или быстрее чем МТ4 я даже не сомневаюсь, и вопрос наверно уже не в том использовать ее или нет, а в том как оптимальнее связать такую конфигурацию с МТ4, как я понимаю для этого нужно использовать DLL, может есть где-то готовые примеры таких библиотек, подскажите пожалуйста.
 
Если честно я не совсем понимаю о чем мы спорим 1С 8.0 на сегодня одна из самых расспространенных платформ предназначена для автоматизации управления сложными бизнес-процессами, все серьезные крупные компании, холдинги и торговые организации в России и странах бывшего СНГ работают в 1С - думаю это о чем то говорит, то что она работает так же быстро или быстрее чем МТ4 я даже не сомневаюсь, и вопрос наверно уже не в том использовать ее или нет, а в том как оптимальнее связать такую конфигурацию с МТ4, как я понимаю для этого нужно использовать DLL, может есть где-то готовые примеры таких библиотек, подскажите пожалуйста.


Неее, давайте не будем про крупные холдинги на 1С. Эта программулина изначальна была предназначена для малых-предприятий, а наши горе-автоматизаторы из за ее дешивизны в 90х годах начали ее натягивать на самые разные предприятия. Потом после осознания, что это тупиковая ветвь развития - начался исход и замена 1С на что-то более мощное, хоть ту же Аксапту. 1С 8 - некий шаг вперед, но все равно под задачи крупного предприятия не подойдет - функциональность слабая и маштабируемость хромает.
 
По приведенной вами ссылке нет ниодного топика где говорилось бы о сравнении с 1С 8,0 там обсуждается производительность разных платформ, но ни слова про 1С, может ссылка не та???

Вообще-то ссылка правильная и там как раз обсуждаются вопросы тестов на скорость. И слова Роша есть про 1С.Предприятие:
Rosh 23.06.05 13:15

Попутно пытался измерить скорость выполнения теста в 1С.Предприятии :)
Типов int и double там нет, но меня это не остановило. Запустил, попутно стал искать возможность измерить время выполнения. Не понадобилось. На глазок - минут 5 заняло :)

если 1С подвисает на 5 мин. на простейших тестах, то проблема скорее всего в железе

Уверен, что Rosh знает о чем говорит и не допустил ошибки.

Я ничего не имею против 1С - используйте ее на здоровье. Но не надо писать без доказательств о том, что 1С в десятки раз быстрее MQL4. В понедельник-вторник я сам запущу стандартный тест на 1С (благо наши бухгалтеры на ней работают) и сообщу результаты. Если будут трудности с конвертацией кода, попрошу помочь.
 
Я прогонял на 1С версии 7.7
Версии 8.0 у меня нет, просто я когда то купил в самом начале 1С Торговлю 7.0, делал кучу апдейтов с доплатами, в данный момент у нас Торговля сетевая и Бухгалтерия сетевая. Сколько они сейчас стоят? Когда платишь за проги собственные бабки, а не деньгами чужого предприятия расплачиваешься - как не хочется проверять насколько восьмая версия стала лучше. Хотя знакомые девелоперы по 1С ее очень хвалят, но у меня уже появилось к этой фирме что-то личное:))
Пока 7.7 пашет - менять ничего не собираюсь.
Причина обращения: