← Zurück

Обработка роботом тиков сипи, дакса?

Интересно, а кто-нибудь пытался в роботе на S# анализировать тики сипи, дакса, нефти?

Возможно ли это?

War dieses Thema hilfreich?

Thema teilen

Kommentare (22)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

Alex2: Интересно, а кто-нибудь пытался в роботе на S# анализировать тики сипи, дакса, нефти?

Возможно ли это?

Откуда берете эту инфу?

Alex2
Alex2 Autor

Mikhail Sukhov:

Alex2: Интересно, а кто-нибудь пытался в роботе на S# анализировать тики сипи, дакса, нефти?

Возможно ли это?

Откуда берете эту инфу?

Пока не откуда. В смарт трейде вроде есть и дакс и сип, только говорят что медленнее чем через тот же oec

sun
sun

Кстати, а как использовать индексы РТС, ММВБ из квика? Там индекс в поле "знчение"...

Almazov
Almazov

Alex2: Интересно, а кто-нибудь пытался в роботе на S# анализировать тики сипи, дакса, нефти?

Возможно ли это?

Можно использовать API http://www.openecry.com. Тоже самое можно делать с API ninjatrader.com. Упоминание именно этих платформ не напрасно. Но интегрироваться придется самостоятельно, хотя это не так как реализовывать связь в другую сторону. Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Alex2
Alex2 Autor

Almazov:

Alex2: Интересно, а кто-нибудь пытался в роботе на S# анализировать тики сипи, дакса, нефти?

Возможно ли это?

Можно использовать API http://www.openecry.com. Тоже самое можно делать с API ninjatrader.com. Упоминание именно этих платформ не напрасно. Но интегрироваться придется самостоятельно, хотя это не так как реализовывать связь в другую сторону. Да, должно быть проще. Спасибо, буду копать в эту сторону.

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных. +1

Mikhail Sukhov
Mikhail Sukhov

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Чуть подробнее? Не совсем понял идею и как в дальнейшем использовать такую связку.

Almazov
Almazov

Mikhail Sukhov:

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Чуть подробнее? Не совсем понял идею и как в дальнейшем использовать такую связку. Любой ITrader предоставляет данные(котировки)-просмотр и позволяет осуществлять торговые операции(и так же получать информацию о счете)-действие. Члены связанные с первым блоком можно было бы вынести в отдельный интерфейс IDataProvider, сделать так называемый pull members up. Это все необходимо для удобного пере использования объектной модели s#(BaseTrader можно декомпозировать таким же образом).

Mikhail Sukhov
Mikhail Sukhov

Almazov:

Mikhail Sukhov:

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Чуть подробнее? Не совсем понял идею и как в дальнейшем использовать такую связку. Любой ITrader предоставляет данные(котировки)-просмотр и позволяет осуществлять торговые операции(и так же получать информацию о счете)-действие. Члены связанные с первым блоком можно было бы вынести в отдельный интерфейс IDataProvider, сделать так называемый push members up. Это все необходимо для удобного пере использования объектной модели s#(BaseTrader можно декомпозировать таким же образом).

А если бросать исключения вида NotSupportedException в методах о регистрации заявок? Так уже в .NET сделано, например, для read only collections.

Almazov
Almazov

Mikhail Sukhov:

Almazov:

Mikhail Sukhov:

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Чуть подробнее? Не совсем понял идею и как в дальнейшем использовать такую связку. Любой ITrader предоставляет данные(котировки)-просмотр и позволяет осуществлять торговые операции(и так же получать информацию о счете)-действие. Члены связанные с первым блоком можно было бы вынести в отдельный интерфейс IDataProvider, сделать так называемый push members up. Это все необходимо для удобного пере использования объектной модели s#(BaseTrader можно декомпозировать таким же образом).

А если бросать исключения вида NotSupportedException в методах о регистрации заявок? Так уже в .NET сделано, например, для read only collections. Нарушение принципа Interface segregation(из SOLID). По мне так это большая ошибка microsoft, что они оставили read only на слишком низком уровне как IEnumerable(в ICollection по-моему до 2-го фреймворка тоже не было изменяющих методов) и у все интерфейсы коллекций должны реализовывать read-only эквиваленты - это объектно-ориентированно.

Almazov
Almazov

Almazov:

Mikhail Sukhov:

Almazov:

Mikhail Sukhov:

Almazov: Кстати ITrader мог бы реализовывать IDataProvider(или что-то вроде этого), для read only данных.

Чуть подробнее? Не совсем понял идею и как в дальнейшем использовать такую связку. Любой ITrader предоставляет данные(котировки)-просмотр и позволяет осуществлять торговые операции(и так же получать информацию о счете)-действие. Члены связанные с первым блоком можно было бы вынести в отдельный интерфейс IDataProvider, сделать так называемый push members up. Это все необходимо для удобного пере использования объектной модели s#(BaseTrader можно декомпозировать таким же образом).

А если бросать исключения вида NotSupportedException в методах о регистрации заявок? Так уже в .NET сделано, например, для read only collections. Нарушение принципа Interface segregation(из SOLID). По мне так это большая ошибка microsoft, что они оставили read only на слишком низком уровне как IEnumerable(в ICollection по-моему до 2-го фреймворка тоже не было изменяющих методов) и у все интерфейсы коллекций должны реализовывать read-only эквиваленты - это объектно-ориентированно. Посмотрел в ICollection так все и осталось :


[ComVisible(true)]
public interface ICollection : IEnumerable
{
    // Methods
    void CopyTo(Array array, int index);

    // Properties
    int Count { get; }
    bool IsSynchronized { get; }
    object SyncRoot { get; }
} 

А вот методы есть в :


[TypeDependency("System.SZArrayHelper")]
public interface ICollection<T> : IEnumerable<T>, IEnumerable
{
    // Methods
    void Add(T item);
    void Clear();
    bool Contains(T item);
    void CopyTo(T[] array, int arrayIndex);
    bool Remove(T item);

    // Properties
    int Count { get; }
    bool IsReadOnly { get; }
}

Причем ICollection<T> не наследуется от ICollection - жесть.

Garry
Garry

Михаил, а не думали реализовать iTrader для зарубежных рынков? Например прикрутить ZenFire? Это очень быстрый датафид и отправка заявок, идеально для скальперских стратегий на зарубехных фьючах. Есть реализация API под C#. Да и россию можно было бы торговать, используя стратегии на корреляцию и т.д.

Mikhail Sukhov
Mikhail Sukhov

Garry: Михаил, а не думали реализовать iTrader для зарубежных рынков? Например прикрутить ZenFire? Это очень быстрый датафид и отправка заявок, идеально для скальперских стратегий на зарубехных фьючах. Есть реализация API под C#. Да и россию можно было бы торговать, используя стратегии на корреляцию и т.д.

Давайте наберем пул желающих. Скажем, если будет более 10, уже не плохо, чтобы посмотреть. А если больше 20, то можно и начать.🙂

vvt
vvt

Давайте наберем пул желающих. Скажем, если будет более 10, уже не плохо, чтобы посмотреть. А если больше 20, то можно и начать. Тема очень интересна.

Garry
Garry

Mikhail Sukhov:

Garry: Михаил, а не думали реализовать iTrader для зарубежных рынков? Например прикрутить ZenFire? Это очень быстрый датафид и отправка заявок, идеально для скальперских стратегий на зарубехных фьючах. Есть реализация API под C#. Да и россию можно было бы торговать, используя стратегии на корреляцию и т.д.

Давайте наберем пул желающих. Скажем, если будет более 10, уже не плохо, чтобы посмотреть. А если больше 20, то можно и начать.🙂 Давайте, я первый🙂 а как набирать? Может тему создать отдельную? Или если есть желающие, пусть тут тогда отпишутся?

Mikhail Sukhov
Mikhail Sukhov

Garry: Давайте, я первый🙂 а как набирать? Может тему создать отдельную? Или если есть желающие, пусть тут тогда отпишутся?

Тему, голосование, может еще пошустрить на других сайтах на предмет имеющих опыт с таким АПИ.

Alexander
Alexander

Garry, Zen-Fire - не терминал\протокол. Наверное надо смотреть именно в сторону протоколов.

Тут есть варианты, либо Ninja Trader, к примеру. Который используется у того же Mirus Futures. Хороший стабильный API, который действительно можно использовать.

Или Fast\Fix.

Mikhail Sukhov
Mikhail Sukhov

Alexander: Garry, Zen-Fire - не терминал\протокол. Наверное надо смотреть именно в сторону протоколов.

Тут есть варианты, либо Ninja Trader, к примеру. Который используется у того же Mirus Futures. Хороший стабильный API, который действительно можно использовать.

Или Fast\Fix.

NT - это же готовая прога. Я как раз думал что ЗенФайр - это API.

Если брать в разработку, то надо что-то максимально популярное и доступное дня нашего рынка.

Garry
Garry

Alexander: Garry, Zen-Fire - не терминал\протокол. Наверное надо смотреть именно в сторону протоколов.

Тут есть варианты, либо Ninja Trader, к примеру. Который используется у того же Mirus Futures. Хороший стабильный API, который действительно можно использовать.

Или Fast\Fix. Zen-Fire это и протокол , и API т.е. доступ на биржу(аля Plaza2 только для американских фьючей). т.е поставка сырых тиковых и level 2 данных и исполнение заявок. Нинзя использует это API. Торговать через Mirus Futures, можно как нинзей, так и собственным софтом через ZenFire API. Соответственно если прикручивать S# то не к нинзе, а к к бирже через ZenFire API, иначе будет лишнее звено. Да и не зачем к нинзе S# прикручивать, там своя система классов и торговая логика и тот же С# .net. Кстати система классов ZenFire очень простая, ничего лишнего http://zen-fire.com/docs/zenfire-1.0.11.0/

Alexander
Alexander

Garry:

Alexander: Garry, Zen-Fire - не терминал\протокол. Наверное надо смотреть именно в сторону протоколов.

Тут есть варианты, либо Ninja Trader, к примеру. Который используется у того же Mirus Futures. Хороший стабильный API, который действительно можно использовать.

Или Fast\Fix. Zen-Fire это и протокол , и API т.е. доступ на биржу(аля Plaza2 только для американских фьючей). т.е поставка сырых тиковых и level 2 данных и исполнение заявок. Нинзя использует это API. Торговать через Mirus Futures, можно как нинзей, так и собственным софтом через ZenFire API. Соответственно если прикручивать S# то не к нинзе, а к к бирже через ZenFire API, иначе будет лишнее звено. Да и не зачем к нинзе S# прикручивать, там своя система классов и торговая логика и тот же С# .net. Кстати система классов ZenFire очень простая, ничего лишнего http://zen-fire.com/docs/zenfire-1.0.11.0/

Супер, на знал. Тогда всё вообще прекрасно может выйти.

pyhta4og
pyhta4og

Open E Cry.

Вразумительный АПИ на нэйтив .net, 15 дней триала - можно вечно перерегистрироваться.

Сейчас похоже не только фьючи но и стоки тянет.

XMbIPb
XMbIPb

Слышал что зарубежными рынками планировали заняться сразу после плазы.. уже есть какие-то подвижки в этом направлении?

Mikhail Sukhov
Mikhail Sukhov

XMbIPb: Слышал что зарубежными рынками планировали заняться сразу после плазы.. уже есть какие-то подвижки в этом направлении?

Есть, но пока слабые, чтобы ими хвалиться.