如何测试我的FIX客户端?我可以使用假的FIX交换机吗? [关闭]

问题描述 投票:21回答:5

我已经实现了自己的FIX客户端,如QuickFIX。现在,我需要对其进行测试。我可以使用某个地方的假FIX交换吗?有没有人实现过我可以用来验证客户端的FIX服务器?是否可以使用他们的测试连接来测试和验证修订客户端的真实交换?

这里的任何帮助将不胜感激!

java c++ quickfix fix-protocol algorithmic-trading
5个回答
11
投票

您是否尝试过FIXimulator? http://code.google.com/p/fiximulator/它不能完全作为交易所使用,但是您可以建立会话,接收订单并执行(尽可能自动执行)它们。签出。


3
投票

[Mini-FIX可用于基于GUI的]

QuickFix示例应用程序“执行程序”和“订单匹配”应该会有所帮助。代码很简单,您甚至可以对其进行增强,以满足您对交换功能的需求。关于这些解决方案的好处是,以FIX 4.2被最广泛接受的支持不同版本的FIX。


2
投票

检查quickFIX发行版。此处:http://www.quickfixengine.org/quickfix/doc/html/examples.html,您可以找到“ 执行者”。

是一个示例服务器,它只是填写它收到的每个限价单。

也可以找到“ ordermatch”,这是将匹配并执行限价单的c ++服务器。


2
投票

CoralFIX带有现成的服务器实现,您可以启动它并开始接受来自FIX客户端的连接。它将处理所有FIX会话级别的详细信息,例如登录,心跳,序列重置,重发请求等。要为测试实现一个简单的服务器,您要做的就是:

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
投票

几年前,我找不到一个无需签署高额许可费合同的测试平台,因此我创建了一个。很抱歉在这里使用无耻的插件,但最终我将其转变为以www.fixsim.com托管的产品/服务,并提供免费试用。 QuickFIX随附的Banzai是一个不错的免费入门,但是如果您需要不同的资产类别,取消/更正,分配或其他消息类型,则必须构建或购买。

© www.soinside.com 2019 - 2024. All rights reserved.