文章 "寻找市场形态的计量经济学方法:自相关,热点图和散点图" - 页 2

 
Maxim Dmitrievsky:

你好,MetaQuotes 更改了 python API,因此该功能 现在无法使用。也许以后我会解决这个问题,并附加一个新的笔记本

此外,您还可以查看本网站的新文档

非常感谢先生的快速回复,并对您的合作表示高度赞赏


等待您的新文件。

 

文章不错!感谢您分享您的工作!

希望你能抽出时间解决 Python API 的问题。


/Rasoul

 

固定笔记本

附加的文件:
 

由于更改了 python api,笔记本版本已更正

附加的文件:
 
Maxim Dmitrievsky:

由于更改了 python api,笔记本版本已更正

附在文章中

 

Close[-1] = (Close[0]-Close[lag]) - ((Close[lag]-Close[lag*2]) - (Close[lag-1]-Close[lag*2-1])))

如果在这里 应用相同的公式,那么情况与 MA 预测类似,周期越长,MA 预测就越准确。

我所做的是取大周期的 MA,提前预测一个条形图,然后据此计算价格预测。我计算了预测误差(实际价格预测)。我计算了价格增量。结果,误差比增量更严重。因此可以说,"今天会像昨天一样 "是最好的预测。

 
Rorschach:

Close[-1] = (Close[0]-Close[lag]) - ((Close[lag]-Close[lag*2]) - (Close[lag-1]-Close[lag*2-1])))

如果在这里 应用相同的公式,那么情况与 MA 预测类似,周期越长,MA 预测就越准确。

我所做的是取大周期的 MA,提前预测一个条形图,然后据此计算价格预测。我计算了预测误差(实际价格预测)。我计算了价格增量。结果,误差比增量更严重。因此可以说,"今天会像昨天一样 "是最好的预测。

那里使用的是滤波序列(特定条件下的小时数)上的自回归。相邻时钟的增量被用作回归因子。是的,这是一种领先一步的预测。我还没有做过更详细的实验。如果你在 mt5 中为随机狼创建一个自定义符号,你可以用文章中的机器人进行测试。不幸的是,我和他们不是朋友。也许有人会做一个。
 
#property script_show_inputs
#include <Math\Stat\Math.mqh>
#include <rndxor128.mqh>//https://www.mql5.com/zh/articles/273
//--- 输入参数
input string   symbol_origin="EURUSD";// 符号名称,根据该名称创建自定义符号 
input string   symbol_name="MySymbol";// 用户字符名 
input datetime From=D'2019.01.01';
input datetime To=D'2020.01.01';

void OnStart()
  {
   CustomSymbolCreate(symbol_name,"",symbol_origin);
   SymbolSelect(symbol_name,true);
   int count=100;//StdDev m1=sqrt(count)
   RNDXor128 xor;
   //xor.SRand(6);//(GetTickCount());
   MqlRates A[];
   double B[]; ArrayResize(B,count);
   int total=CopyRates(symbol_origin,PERIOD_M1,From,To,A);
   for(int i=0;i<total;i++)
     {for(int j=0;j<count;j++) {B[j]=(xor.Rand()<2147483648)?_Point:-_Point;}
      MathCumulativeSum(B);
      A[i].open=(i>0) ? A[i-1].close : 1.1;
      A[i].high=MathMax(B)+A[i].open;
      A[i].low=MathMin(B)+A[i].open;
      A[i].close=B[count-1]+A[i].open;
      A[i].tick_volume=count;
     }
   Print(CustomRatesReplace(symbol_name,From,To,A));
  }
在图表设置(Ctrl+O)中,您需要选择所需的条数
 
Rorschach:
在图表设置 (Ctrl+O) 中,您需要选择所需的条数

稍后,我将用同样的方法处理自回归,将序列上传到 python,建立模型。

 

感谢您的文章,我非常喜欢阅读!

我注意到在这个示例中,您在选择单个小时后设置了 .diff(lag)。 也就是说,25 的滞后实际上对应于 25 天的滞后。

三维图中是个例外,您在选择小时之前应用了滞后。这是故意的吗?