从理论到实践 - 页 532

 
Igor Makanu:

也就是说,在Matlab中检查想法比较容易(或者在MQL中从头做起),但如果你想把一个想法移植到MQL中,你就必须研究ALGLIB。

为了什么?除了Alglib之外,还有很多有据可查的lib和包。在R和Python中都有。而且它比Alglib宽得多。几乎所有的内容都是用C++语言。港口和使用。

一般来说,如果没有初步的建模,在MQL中任何或多或少的复杂策略都是不可能的。然后你甚至不会想把它翻译成MQL。))。

SZZ 在过去的10年中,由于各种原因,我更换了几个终端,并得出结论,ATS不应该取决于终端。而现在我正在2个不同的终端上工作。终端只应该是数据提供者和请求的 "执行者"。

 
Yuriy Asaulenko:

为什么?除了Alglib之外,还有很多有据可查的lib和包。无论是在R中还是在Python下。而且比Alglib宽得多。几乎所有的东西都是用C++语言。港口和使用。

一般来说,如果没有初步的建模,在MQL中任何或多或少的复杂策略都是不可能的。然后你甚至不会想把它翻译成MQL。))。

SZZ 在过去的10年中,由于各种原因,我更换了几个终端,并得出结论,ATS不应该取决于终端。而现在我正在使用2个不同的终端。终端应该只是一个数据提供者和请求的 "执行者"。

好吧,我已经移植了AlgLib,作为MT5的编程实践 - 我也在研究它,以了解概念,可以说,AlgLib是如何建立的 - 我花了一个星期,结果是积极的。

好吧,想法的验证--将一些东西快速移植到MT5上是真实的,但到了用户界面,任务就变得更加复杂。

那么,Matlab的不二优点是,它在网上有很多现成的东西,唉,一个人要是不想了解R和Python,那就得再花3-4个月的时间阅读和测试))))。

SZS: 有人在论坛上写道,IT公司现在看重的不是写代码的质量,而是测试想法的 速度。 我理解为什么所有的新软件都是对资源的渴望,但是对于我们的目的来说,这个概念是正确的

 
Igor Makanu:

好吧,想法的验证--一些东西可能很快被移植到MT5上,但直到用户界面,任务变得更加复杂。 用Matlab更容易--这里有一个公式,只要写出来,检查和可视化。

好吧,Matlab的一个不小的优点是,你可以在网上得到很多现成的东西,唉,我不觉得要处理R和Python,这又要花3-4个月的时间阅读和测试))))。

SZS: 有人在论坛上写道,现在的IT公司看重的不是写代码的质量,而是测试想法的 速度。 我明白为什么所有的新软件都对资源要求很高,但是对于我们的目的来说,这个概念是正确的!

那么,MathLab在建模方面的优势是无可争议的--它快速、方便、反应迅速。R、Python等在这方面并不逊色,只是它们是免费的。

Python(现在正试图在后台做一些真正的事情,非常缓慢)被人喜欢,因为它作为一个建模和开发环境都很好。也就是说,在建模之后,你马上就有一个现成的系统。剩下的就是把它连接到终端。https://www.mql5.com/ru/forum/269426

Делаем торговую систему на Python для МТ.
Делаем торговую систему на Python для МТ.
  • 2018.07.30
  • www.mql5.com
Возникла мысль написать торговую систему на Python, и коли уж возникла, почему-бы не сделать эту систему общедоступной...
 
Yuriy Asaulenko:

那么,对于MathLab在建模方面的优势没有异议--快速、方便、快捷。R、Python等在这方面并不逊色,只是它们是免费的。

Python(现在正试图在后台做一些真正的事情,非常缓慢)被人喜欢,因为它作为一个建模和开发环境都很好。也就是说,在建模之后,你马上就有一个现成的系统。剩下的就是把它连接到终端。https://www.mql5.com/ru/forum/269426

如果你有很好的Python工作知识,你可以把它作为一个建模环境,或者你可以使用一个老式的dll。

或尝试在纯MT4上100%从头开始做))))

ZS:检查你的想法没有问题,所有的平台都相当发达--我从社区判断,任何困惑的问题在一天内就能解决--有很多俄语论坛和活跃的参与者,但问题是不同的....。在正确的研究领域!

 
Igor Makanu:

但问题是别的东西....在正确的研究方向上!

嗯,这就是建模的作用,而不是直接写ATC。

我对以前的PBX进行了大约六个月的建模。最后,它变成了一个非常简单和漂亮的系统。但在这个过程中,它的并发症是比较多的)。

这里几乎没有可视化。所有的日志都写在Access数据库中。

 
RRR5:

怎样?


如何使函数y=ax2+bx+c线性化?

做一个常规的多元回归,输入两个价格--常规的和平方的

而产出只是价格

你只是不需要它的原始形式

 
Maxim Dmitrievsky:

不能编译,我可以有一个如何使用它的例子吗?

拼错了。这是一个调试支持文件。如果你也拿着它,它就会拉动很多东西。

卸载这个文件的inlude,并删除所有的ASSERTs和TRACEs。

 
Georgiy Merts:

这是一个调试支持文件。

删除它,并删除所有的ASSERTs和TRACEs。

是的,好的,已经想明白了,谢谢......我不知道为什么需要它,只是想看看聪明人是如何编码的)

 

在我发布的 多项式回归指标中,回归是通过一个函数实现的。

double regression_QRMA(int period,int shift,int price) 
  {
   double lwma= iMA(NULL,0,period,0,MODE_LWMA,price,shift);
   double sma = iMA(NULL,0,period,0,MODE_SMA,price,shift);
   double qwma= ma_qwma(period,shift,price);
   double value=3.0*sma+qwma *(10-15/(period+2))-lwma *(12-15/(period+2));
   return(value);
  }

其中

double ma_qwma(int period,int shift,int price) 
  {
   double sum=0;
   int j,i;
   for(j=shift,i=1;j<shift+period; j++,i++) 
     {
      sum+=switch_getPrice(price,j)*MathPow(period-i+1,2);
     }
   double value=6.0/(period *(period+1) *(2*period+1));
   return(value*sum);
  }


double switch_getPrice(int price,int shift) 
  {
   switch(price) 
     {
      case 0:
         return(Close[shift]);
      case 1:
         return(Open[shift]);
      case 2:
         return(High[shift]);
      case 3:
         return(Low[shift]);
      case 4:
         return((High[shift]+Low[shift])/2);
      case 5:
         return((High[shift]+Low[shift]+Close[shift])/3);
      case 6:
         return((High[shift]+Low[shift]+Close[shift]+Close[shift])/4);
      default:
         return(Close[shift]);
     }
  }


是否正确?)
是否有可能通过向导来实现ISC?)

 
RRR5:
在我发布的 那个多项式回归指标中,回归是通过一个函数实现的。
这是正确的吗?)
是否有可能通过一个假人实施ANC?)

嗯,正确性--自己看吧。我发现这个数值的计算公式相当奇怪。这显然不是MNC,但它很可能是介于两者之间的东西。

关于 "通过巫师的MOC"--非常令人怀疑。最小二乘法是寻找近似曲线系数,使源点和近似点数值之差的平方之和最小。

我们取初始点,对每个标点计算近似的序数,减去真实的序数,取其平方,然后将所有的平方相加。我们用每个未知数对这个总和进行微分(未知数是近似曲线的系数),然后得到一个方程组。如果我们用多项式对其进行近似,就会得到一个线性代数方程组。在我看来,无论你如何扭曲它,你都不会得到同样的东西。