2016-07-07 7 views
-1

Я только начал пытаться подключиться к моему брокеру через протокол FIX.python - Протокол протокола FIX простой тестовый вход

Брокер дал мне:

  • IP: адрес порта для подключения к
  • "SenderCompID"
  • "targetcompid"
  • пароль

Я бы например, как первый тест, просто отправьте сообщение для входа брокеру и, надеюсь, получите сообщение от него. Я бы подумал, что это должно быть возможно с помощью простого маленького скрипта python?

(т.е. им не заинтересованы в установке полностью оперять питон двигатель/или использовать обертку для языка С ++, такие как QuickFix)

редактировать: быть более точным: я нашел на SO пример делает (или пытаюсь) такая вещь в PHP, например:

$fp = fsockopen($host, $port, $errno, $errstr, 3.0); 

if ($fp) 
{ 
    $request = "8=FIX.4.49=11235=A49=SENDER56=RECEIVER34=152=20130921-18:52:4898=0108=30141=Y553=user554=pass10=124"; 

    echo $request; 

    fwrite($fp, "GET/HTTP/1.0\r\n" . 
     "Host: $host\r\n". 
     "Connection: close\r\n". 
     "Content-Length: " . strlen($request) . "\r\n" . 
     "\r\n" . 
     $request); 

    stream_set_timeout($fp, 2, 0); 

    $response = ''; 
    while (!feof($fp)) 
    { 
     $response .= fread($fp, 1024); 
    } 

    print "Response: ".$response . "<BR>\n"; 
    fclose($fp); 
} 

вы знаете, какие библиотеки я могу использовать, чтобы просто общаться (т.е. отправить/получить) сообщение на сервер FIX таким же образом в питоне?

+0

И что вы пробовали? SO здесь не для написания кода. Это поможет вам с кодом, который вы написали. –

+0

Я работаю с разработчиком (то есть не я делаю код). Но мы оба новичок в этих задачах и в основном застряли на первом шаге: есть ли библиотека python для отправки сообщения в адрес ip и получения ответа от него? Я пытался выкопать в quickfix lib, чтобы извлечь код, где они это делают, но не смог найти его. Некоторое простое фундаментальное понимание того, как это работает от вас, ребята помогут. Спасибо –

+0

Я бы не стал спускаться по этой дороге - похоже, вы пытаетесь написать свой собственный движок FIX, который представляет собой огромную банку червей - разные версии , словари данных, heartbeating, resends и т. д. Это забавное упражнение, но не для системы производства. – dsolimano

ответ

1

Ну, для этого нет стандартной библиотеки python.

Вы упомянули quickfix, что такое большой проект, который, как представляется, поддерживается, и имеет документацию.

В поисках других сторонних библиотек существует меньший, но только для python2.6 или 2.7, с именем fixlib и в настоящее время hosted on github (версии PyPI и bitbucket, похоже, заброшены, версия github активна 6 несколько месяцев назад). Основные неудобства: нет документации.

Глядя на код этих двух библиотек, они не совсем «маленькие», поэтому, если вы не хотите использовать их, так как вам, безусловно, придется переписывать аналогичный код с нуля, вам лучше забыть о «простом и маленьком сценарии python».

0

Если вы хотите выполнить тест в протоколе FIX через соединение FIX, вы можете попробовать использовать FIXRobot. FIXRobot позволяет легко писать тесты в python.

Смежные вопросы