воскресенье, 10 января 2010 г.

Excel4Net.Com - программирование на C# .NET под Excel

В поисках необычного в процессе серфинга по инету наткнулся на интересный проект: Excel4Net. Я уже писал ранее, как ведущие роботоводы разрабатывают свои прораммы в нынешнее время. И программирование под Excel меня не привело в восторг. После ознакомления с данным проектом, я решил пересмотреть свое мнение на Excel, причем в значительно лучшую сторону.

Excel - очень распространенная среда, и конкурентам (по крайней мере из российского сектора) до массовости Excel как пешком до Поднебеной. Тем не менее, повторю основные минусы Excel:
К этому стоит добавить еще то, что на Excel не так уж тривиально интегрироваться с торговой программой, что для предыдущего пункта делать вообще не нужно. Отдельно можно выделить стабильность - всего один поток, и если он зависнет, зависнут как другие скрипты, так и не будет возможности перезапустить алгоритм (а Excel еще не научился вытаскивать себя из болота за волосы как Мюнхаузен), или даже перезапустить соединение с торгующей программой.

Excel4Net позволяет как раз решить главный недостаток - интеграция. С использованием .NET у Excel появляется просто огромный потенциал в работе с другими программами. Например, библиотеку Ecng.Trading можно на раз-два-три начать использовать как раз из Excel. Это отчетливый сигнал тем, у кого торговые алгоритмы написаны на VBA, и их не устраивает стабильность и скорость. Excel4Net позволяет переписать ряд алгоритмов со скриптов на C# (или VB.NET, кому что нравится), что увеличит скорость в разы. Я переписал один свой макрос на C#, и у него прирост в производительности был равен 1600%. В 16 раз!. Вот здесь показано, как реализовать формулу Блэка-Шоулза.

После выпуска версии Ecng.Trading 1.5 (в текущий момент заканчиваю документацию, которой теперь будет много), обязательно сделаю что-нибудь торговое под Excel4Net. Такой проект трейдерам пройти мимо нельзя.

3 комментария:

  1. Привет!
    А что работает быстрее? Чистый С# с твоим DDE сервером или excelевский DDE с Excel4Net?
    Очень интересно.

    ОтветитьУдалить
  2. Leonandr,

    Хороший вопрос. С одной стороны ДДЕ сервер экселя более продвинут (шутка ли, столько десятилетий писать). С другой стороны, лаги наверное незначительны... Может быть есть возможность это проверить? Я бы посмотрел бы на результаты, уж больно интересны такие решения.

    ОтветитьУдалить
  3. ThePPK,

    Пришли, пожалуйста, ссылку на данную библиотеку. Идея замечательная. Но, как обычно, упирается во время. Если Вы уже занимались подобным, могли бы Вы сделать пример и описание, как с этим работать. Я опубликую его в блоге (или ссылку на Ваш блог).

    А Квик имеет хранить историю? Проблема еще в том, что Квик не поддерживает экспорт по графикам (только по таблицам).

    ОтветитьУдалить