服务。他们已经启动并运行了吗? - 页 14

 
Maxim Dmitrievsky:

许多平台都有这个选项,比如说。通常的做法是,使用一种饲料,用不同的经纪人进行交易。

套利与此毫无关系。

例如,其他供应商有市场深度、其他信息符号(指数、期货)和其他好东西

是的,我正在学习用Ninja Trader 8取卷。我已经通过文件快速而拙劣地完成了它。我将尝试通过服务来完成它。

 
fxsaber:

没有DLL,你就不能 "扩展终端的GUI"。

通过内存映射的通信,同时将是双向的。

 
fxsaber:

我理解,仲裁员的梦想是类似的API。解决这个问题的唯一方法是将几个端子 并联起来。

你拿着一个主终端,使用该服务从其他开放终端收集数据。在主终端上,你总共有

EURUSD_Alpari.

EURUSD_Dukascopy

EURUSD_LMAX

----


如果主控终端在慢速DC上,可以写一个初级的专家顾问,不超过MQL。所有的脏活累活都由该局完成。

它是如何工作的?请说两个字。

 
Реter Konow:

终端中的一个用户定义的进程,可以被每个EA访问。 你可以在服务中的独立线程中运行与市场环境有关的无尽计算,并在适当的时候从进程中获取当前的结果。

环形缓冲区。

遗憾的是,与winndows不同,MT5的服务是在终端内的本地服务...

 
Alexey Volchanskiy:

是的,我正在学习如何用Ninja Trader 8取卷。我做了一个快速而俗气的,通过文件。我将通过服务来尝试。

我认为,NT是一个死的项目

 
Maxim Dmitrievsky:

我认为,NT是一个死的项目。

它是有生命力的,而且在不断成长

 
Alexey Volchanskiy:

有没有一个通过资源在空中传输数据的例子?

搜索一下应该能找到。

阿列克谢-沃尔昌斯基

如何做到这一点?一言以蔽之。

FILE_COMMON 或DLL。

 
Maxim Dmitrievsky:

我认为,NT是一个死的项目。

当我这样说的时候,我进一步写,因为首先......,其次是....。等。但这只是真空中的另一个屁)。

它仍然是成熟的C#,.NET的最新版本,如4.5或4.6。你可以在VS2017中直接编写和调试程序,这说明什么吗?加上.NET库的所有功能。而对我来说最重要的是,可以获得期货的交易量。但莫斯科证券交易所 则不然,那里的一切都比全球的波动滞后数十分钟。顺便说一下,也有市场,虽然我没有研究过,现在还太早。

 
fxsaber:

FILE_COMMON 或DLL。

啊,我以为在服务方面已经发明了新东西。

 
Alexey Volchanskiy:

它仍然是成熟的C#,有一个相当新的.NET版本,比如4.5或4.6。你可以在VS2017中编写和调试程序,这说明什么吗?

我们在这里也不了解情况!

我在10分钟内从MT5交付中重写了动量指标...重写了......复制到VS2017 ))

MQL5源代码。

#import "tst_momentum.dll"
#import
..... текст оригинала индикатора Momentum.mql5

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const int begin,
                const double &price[])
  {
   int StartCalcPosition;
   double pr[];
   ArrayCopy(pr,price);
   momentum::oncalculate(ExtMomentumPeriod,rates_total,prev_calculated,begin,pr,StartCalcPosition,ExtMomentumBuffer);
   if(begin>0) PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,StartCalcPosition+(ExtMomentumPeriod-1));
   return(rates_total);
  }

C#来源

namespace tst_momentum
{
    public class momentum
    {
        public static void oncalculate(int ExtMomentumPeriod,
                                int rates_total,
                                int prev_calculated,
                                int begin,
                                double[] price,
                                ref int StartCalcPosition,
                                ref double[] OUTArray)
        {
            StartCalcPosition = (ExtMomentumPeriod - 1) + begin;
            if (rates_total < StartCalcPosition) return;
            int pos = prev_calculated - 1;
            if (pos < StartCalcPosition) pos = begin + ExtMomentumPeriod;
            for (int i = pos; i < rates_total;  i++)
            {
                OUTArray[i] = price[i] * 100 / price[i - ExtMomentumPeriod];
            }
        }
    }
}

MQL5做内存分配,C#做计算

ZS: 我不知道如何在不复制的情况下 将price[] 传给C#- 有什么变种吗?