NJ4X源码阅读分析笔记系列(一)——项目整体分析

NJ4X源码阅读分析笔记系列(一)——项目整体分析

NJ4X是什么

参见NJ4X的官网:http://www.nj4x.com/

Java and .Net interfaces to supported Forex brokers in a legal and robust way.

这个NJ4X是个乌克兰人写的,代码风格相当彪悍,不愧是战斗民族。


大题的架构图如下:
NJ4X源码阅读分析笔记系列(一)——项目整体分析_第1张图片
NJ4X源码阅读分析笔记系列(一)——项目整体分析_第2张图片

本文研究的NJ4X版本

2.6.2

NJ4X的整体架构

NJ4X由以下六部分组成:

  • mt4if MT4语言的C++接口(MT4 Interface DLL)
  • nj4x-ts NJ4X终端服务器(NJ4X Terminal Server)
  • jfx MT4 终端API,JAVA版(JFX MT4 Terminal API for Java)
  • nj4x MT4 终端API,.NET版 (NJ4X MT4 Terminal API for .Net)
  • ea 专家系统 (JFX Expert Advisor)
  • zero-term 具体不明,不知道是干什么,后期有时间会分析。

运行系统要求

官方推荐用windows,因为有C++的库。但是看Q&A上面也有说可以在Linux下运行的,原理是采用WINE,我没有试过,有兴趣的可以自己去试试。MAC下也可以使用WINE,我没有试过。

参见:How can I run Terminal Server on WINE (Linux)?

用到的工具

  • JDK1.7以上 我用的是1.8
  • Visual Studio2013以上 我用的是2015
  • Maven 3.3.9
  • Nuget.exe 这个要说一下,现在的vs自带nuget,但是我不知道nuget的具体目录,只能单独下载一个。
  • launch4j 这个是把jar可执行程序转换为exe的。
  • 7Zip 负责解压的,用来解压zrv

项目转换

其中mt4ifnj4x这两个项目需要在VS转换为本地VS能够处理的。mt4ifC++写的,nj4xC#写的。

转换的话就是在VS中打开,然后按照提示操作就行了,和我们用高版本VS打开低版本的VS开发的项目是一样的。

记住,转换之后就可以关闭VS了,VS可以歇菜了,不要用VS编译项目

项目编译

首先在项目根目录下的pom.xml中设置好所需工具的路径,设置成为你自己的路径。

C:\Program Files\7-Zip\7z.exe
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\MSTest.exe
C:\Program Files (x86)\Launch4j

首先进入mt4if模块中,mvn pacakge编译好C++库。然后就可以在编译你需要的模块了。

如果想编译整个项目,就在根目录下mvn pacakge,但是容易出错,你要重试好多次,过程比较麻烦。

最后,项目如图所示:
NJ4X源码阅读分析笔记系列(一)——项目整体分析_第3张图片

你可能感兴趣的:(NJ4X源码阅读分析笔记系列(一)——项目整体分析)