文件交换

图像缩略图

自动交易与MATLAB - 2012

自动交易网络研讨会的文件显示X_Trader和QuickFIX/J集成。
4.8
9级

17下载

更新2016年9月1日

查看许可证

2012年8月21日播出的“MATLAB自动交易”网络研讨会使用的文件。这个网络研讨会可以在www.tianjin-qmedu.com/videos/automated -贸易- - matlab 81911. - html
具体的主题包括:
*数据收集选项,包括每日历史数据、日内数据和实时数据
*MATLAB中的建模与原型制作
*对模型进行回溯测试和校准
*与交易执行的现有库和软件交互(X_Trader, QuickFIX/J,消息队列)

建议您观看网络研讨会,以了解“实时”系统的运行情况。

引用作为

斯图尔特·科佐拉(2020年)。自动交易与MATLAB - 2012(//www.tianjin-qmedu.com/matlabcentral/fileexchange/37932-automated-trading-with-matlab-2012),MATLAB中央文件交换。恢复.

意见及评分(21)

quickFix/j 1.6版中是否缺少executor.bat文件?我试图弄清楚如何运行行系统('C:\sandbox\java\quickfixj\bin\executor.bat&')。是否需要切换到1.5版?

青色

鑫刘

谢谢干得好!

谢谢你的分享,对我帮助很大,如果我们继续这个动议,每个人都会很富有。

干得好,@Stuart有这么多需要使用GA来找到最佳规则吗?你所做的方案中有3*2+3*2^2*3+2^3*3^2种规则的可能性,所以逐个测试它们不是什么大问题

你好,斯图尔特,

我在电脑上启动banzai有困难。我知道它可能需要处理配置文件没有在正确的路径上。
我收到错误,SessionSettings是一个未定义的函数。我不确定在哪里放正确的文件和什么文件放在那里。谢谢你!

@Stuart,

我解决了这个问题。这确实是一个路径问题。如果类依赖于other.jar,那么这些类也需要添加到javaclasspath中。
按照quickfix安装指南,路径中需要有以下4个jar文件:

quickfix -all.jar(包括核心和消息jar)
mina-core-1.1.0.jar
slf4j-api.jar
slf4j-jdk14.jar

你好,斯图尔特,

1) Banzai的例子在我的系统上正常运行。
2) javaclasspath设置正确。
我成功地从相同的quickfixj all jar文件调用(并在Matlab中创建输出对象)其他类。

@坦率的

这个错误告诉你找不到SocketInitiator方法。此错误可能是由于以下原因之一:
1)所需的库不在javaclasspath上
2)所需的Java库不匹配

当您下载并安装quickfix/j时,在MATLAB之外运行banzai示例,以确保您的系统具有所有必需的java库。如果运行正确,那么问题出现在所需java库的import /classpath.txt引用中,您可以通过从与安装quikcfix/j相同的目录导入库来解决这个问题。

我有一个错误,当我试图执行'Demo7b_QuickFIXExample.m'

一切都很好,直到行:
引发剂= SocketInitiator(应用程序、storeFactory设置、logFactory messageFactory);

这给了我一个错误:
类型的输入参数的未定义函数“SocketInitiator”
“quickfix.examples.banzai.banzaiaapplication”。

操作系统:Microsoft Windows 7 Version 6.1 (Build 7601: Service Pack 1)
Java虚拟机版本:Java 1.6.0_17-b04,带Sun Microsystems Inc.Java HotSpot(TM)64位服务器虚拟机混合模式

我在用Windows 7:
操作系统:Microsoft Windows 7 Version 6.1 (Build 7601: Service Pack 1)
Java虚拟机版本:Java 1.6.0_17-b04,带Sun Microsystems Inc.Java HotSpot(TM)64位服务器虚拟机混合模式

马克

谢谢你的收藏。粗略地阅读一下代码,如果我是正确的,那么在tradessignal中使用的逻辑存在问题,如果我正确地理解了它。具体来说,就是输入“ind”和逻辑“and”。按照我的理解,“ind”是标准化的,0 =卖出,0.5 =“跳过”,1 =买入。如果你逻辑上和0 & 1(卖和买)结果是0(卖),然而这不是想要的结果。我在此发表这篇文章是为了帮助其他人检查这段代码,并欢迎根据我的理解进行任何更正。

太神了

皮门特

嗨,戈林,

您是否尝试过inputStream=java.io.FileInputStream('C:\\MATLAB\u CODES\\Automated\u Trading\\banzai.cfg');

设置= SessionSettings (inputStream);

这是一个JAVA路径问题,而不是MATLAB。试试这个,应该可以。

戈林

谢谢你的回答,斯图尔特。但这是另一个错误。首先,我尝试运行Demo7b_QuickFIXExample.m,它写道:

Java异常发生:
quickfix。配置错误:banzai.cfg(系统无法找到文件
(指定)

位于quickfix.SessionSettings.(SessionSettings.java:110)

Demo7b_QuickFIXExample错误(第23行)
设置=会话设置('banzai.cfg');

当试图在Windows上引用一个不是有效URL的文件路径时,会发生此错误。看到http://sourceforge.net/tracker/index.php?func=detail&aid=3506051&group_id=176742&atid=878458了一个例子。

你可以:
1) 在当前工作目录中使用banzai.cfg运行命令

2) 将MATLAB文件更改为接受inputStreams:
inputStream = java.io.FileInputStream(“C: \ \ MATLAB_CODES \ \ Automated_Trading \ \ banzai.cfg”);

设置= SessionSettings (inputStream);

戈林

我有一个错误,当我试图执行'Demo7b_QuickFIXExample.m'script:
-首先我添加了路径到'classpath.txt'
-然后加载快速修复包后,我尝试执行'settings = SessionSettings('banzai.cfg');'它写我:
Java异常发生:
quickfix.ConfigError:banzai.cfg(无法在quickfix.SessionSettings.(SessionSettings.java:110)找到)

如果我尝试执行一行完整路径的代码,比如“settings=SessionSettings('c:\MATLAB\u CODES\Automated\u Trading\banzai.cfg');”它写道:

Java异常发生:
java.lang.IllegalArgumentException:名称

在美元sun.misc.URLClassPath加载程序。findResource(未知来源)

位于sun.misc.URLClassPath.findResource(未知源)

在java.net.URLClassLoader 2.美元运行(未知来源)

位于java.security.AccessController.doPrivileged(本机方法)

java.net.URLClassLoader.findResource(未知源)

位于java.lang.ClassLoader.getResource(未知源)

在java.lang.ClassLoader。getResourceAsStream(未知来源)

在quickfix.SessionSettings。< init > (SessionSettings.java: 105)

更新

1.2.0.1

更新的许可证

1.2.0.0

与工具箱包装更新。

1.1.0.0

更新zip文件内容。