使用java的FIX协议

时间:2012-02-07 08:28:34

标签: java protocols fix-protocol

我使用Financial Information eXchange(FIX)协议在Java中开发了一个实用程序,用于从输入流中提取数据。但是,我目前还没有找到任何可以连接到的实现FIX协议的测试服务器。有人可以告诉我如何实现这一目标吗?

6 个答案:

答案 0 :(得分:4)

您可以使用CoralFIX快速启动测试服务器。它负责所有会话级别的FIX消息,例如Logon,ResendRequest,SequenceReset,Heartbeat,因此您可以开始与客户端交换消息。下面是一个简单的例子:

import com.coralblocks.coralfix.FixMessage;
import com.coralblocks.coralreactor.client.Client;
import com.coralblocks.coralreactor.nio.NioReactor;
import com.coralblocks.coralreactor.util.Configuration;
import com.coralblocks.coralreactor.util.MapConfiguration;

public class SimpleFixApplicationServer extends FixApplicationServer {

    public SimpleFixApplicationServer(NioReactor nio, int port, Configuration config) {
        super(nio, port, config);
    }

    @Override
    protected void handleFixApplicationMessage(Client client, FixMessage fixMsg, boolean possDupe) {
        // do whatever you want to do with the application message received from this client...
    }

    public static void main(String[] args) {

        NioReactor nio = NioReactor.create();

        MapConfiguration config = new MapConfiguration();

        // print all messages received and sent to STDOUT for debugging purposes
        // (default is false)
        config.add("debugMessages", "true");

        // accept as the client inbound sequence whatever 
        // sequence I receive in the first message coming from the client
        // (default is false)
        config.add("acceptInboundSeqFromClient", "false");

        Server server = new SimpleFixApplicationServer(nio, 45451, config);

        server.open();
        nio.start();
    }
}

可以找到上面代码的完整说明here

免责声明:我是CoralFIX的开发者之一。

答案 1 :(得分:2)

http://www.quickfixj.org/有一个开源修复引擎。它附带一个具有简单服务器的示例。您可能也想将它们的库用于客户端,而不是从头开始重建FIX引擎......

答案 2 :(得分:0)

我认为你没有在真空中构建它,而是与某个经纪人的FIX服务器交谈?如果是这种情况,请与您的经纪人联系,因为他们可能拥有您可以连接的测试服务器。

答案 3 :(得分:0)

您可以尝试在此处搜索更多信息:http://fixprotocol.org/discuss/

答案 4 :(得分:0)

这取决于您是否需要托管或DIY解决方案。如果你想在不编译/构建/设置的情况下快速启动FIX会话,那么我会去托管模拟器。

我们为这些人http://www.fixsim.com/设立了一个帐户,并推荐他们(简单设置并添加更多连接)。

(我不为公司工作而且无话可说)

答案 5 :(得分:-1)

我为经纪人工作,非常欢迎您加入我们的Staging FIX服务器。我不知道任何匿名服务器,也许这是FIX社区可以设置的东西..

干杯, 克里斯