差分微积分,例子。 - 页 12

 
阿列克谢-潘菲洛夫

欢迎大家提出意见。

既然没有建议,我们就按部就班吧。

添加了基本指标和MT 5的专家顾问版本。

在5分钟的时间框架内进行优化。

图纸是在Excel文件中。

附加的文件:
 

我们仍然只使用指标信号。

假设M5上有主要信号,M1上有细化的入口。在M1上通过开盘价进行了优化。在测试文件夹中,选择了(不是很仔细)变体,既按 "开盘价 "又按 "所有刻度"。我没有看到根本的区别。在两倍于优化区间的区间上进行测试。


附加的文件:
 
阿列克谢-潘菲洛夫

例如,这里是使用价格增量作为新信息的另一种方式。在这里,增量被明确地解读为差值。

1*y1-1*y2-2*y2+3*y3-1*y4 =0

1*y1-1*y2-3*y2+6*y3-4*y4 + 1*y5 =0

1*y1-1*y2-4*y2+10*y3-10*y4 +5*y5-1*y6=0

1*y1-1*y2-5*y2+15*y3-20*y4+15*y5-6*y6 +1*y7=0

1*y1-1*y2-6*y2+21*y3-35*y4+35*y5-21*y6+7*y7-1*y8=0

...

你可以看到,由五次方的多项式(基于连接点的数量)按惯例画出的线(红色)也已经牢牢地固定在图形上了。


这就好比在牺牲了第一个差额(价格增量)上的四度多项式的情况下,我们增加了(按点数)五度。

是这样吗, 规范化?


我看了看这些数字,与VIKI "二项式系数 "的图片进行了比较,结果发现它们是一样的。


这些是"(1+x)^n的幂级数扩展中的系数"

"帕斯卡尔三角形中的行除以2^n(行中所有数字之和),在极限情况下,趋于正态分布 函数。"

在创建该主题时,据说主要是对 "数学,...... "感兴趣。所以我写道。VIKI中帕斯卡尔三角形的数学关系写得很详细,只是不清楚需要什么。

 
弗拉基米尔

看了一下数字,与VIKI "二项式系数 "的图片相比,结果是一样的。


它是"(1+x)^n扩展为一个幂级数的系数"。

"帕斯卡尔三角形中的行除以2^n(行中所有数字之和),在极限 中趋于正态分布 函数。"

在创建该主题时,据说主要是对 "数学,...... "感兴趣。所以我写道。VIKI中帕斯卡尔三角形的数学关系阐述得更详细,只是不清楚需要哪一个

如果这是一个问题,它看起来非常像一个反问句。))

回答这样一个问题并不容易。三角形的属性在非常不同的 "主题 "中显示出来。

你提到了统计学,我已经试图从运动学的角度来了解情况(在所附链接中)。

关于交易、自动交易系统和交易策略测试的论坛

差分微积分,例子。

Aleksey Panfilov, 2018.01.10 16:34


是的。

与牛顿的二项式直接相关。

对于等距离的点来说,这是真的。

1*Y1-2*Y2+1*Y3=0- 直线的差分方程。

1*Y1-3*Y2+3*Y3-1*Y4=0--二度抛物线的差异方程。

1*Y1-4*Y2+6*Y3-4*Y4+1*Y5=0 - 三度抛物线的差分方程。

这也是与主题相重合的。

https://www.mql5.com/ru/forum/61389/page48#comment_5633264

https://www.mql5.com/ru/forum/211220/page2#comment_5632736 。

在我看来,我在 "Kvant "杂志上看到了一篇有趣的文章。而这并不是N.B.瓦西里耶夫关于这个话题的唯一文章,当然它也没有穷尽帕斯卡尔三角形的全部属性范围。(让我们把帕斯卡尔不是第一个注意到这种 "模式 "的事实排除在括号之外)。

P/S. 档案馆的名字是歪的,它被称为:尼古拉-瓦西里耶夫。日记量表.doc.zip

附加的文件:
 


附加的文件:
 
阿列克谢-潘菲洛夫

如果这是一个问题,那也是一个非常具有修辞意义的问题。))

回答这样一个问题并不容易。三角形的属性在非常不同的 "主题 "中显示出来。

你提到了统计学,我已经试图从运动学的角度来了解情况(在所附链接中)。

在我看来,我附上了 "Kvant "杂志上一篇有趣的文章。而这并不是N.B.瓦西里耶夫关于这个问题的唯一文章,当然它也没有穷尽帕斯卡三角形属性的全部表现形式。(让我们把帕斯卡尔不是第一个注意到这种 "模式 "的事实排除在括号之外)。

P/S. 档案馆的名字是歪的,它被称为:尼古拉-瓦西里耶夫。Quant journal.doc.zip

谢谢你的详细答复。我阅读了所有的补充材料。这个问题本身不是,而是对你在另一个主题https://www.mql5.com/ru/forum/221552/page194#comment_6625488:"是否有可能同时使用二度和n度差和EMA从一到四度这样的方式?如果能在类似的例子中对过程做一个总体方案,那将是一件令人好奇的事情。"

你不必通过逐渐增加考虑的差异数1来达到方案的普遍性,你可以通过分析帕斯卡三角形的特性直接达到非常多的差异数。据我所知,正是在那条线上,出现了估计 "参考分布 "的需要。让它为成千上万的增量,但 "基准 "是立即在你的系数的属性中假设从帕斯卡尔三角形渴望一个正常的分布。@Alexander_K2 在寻找一个至少有点接近泊松分布的增量分布,而泊松分布本身随着指数的增加而趋于正态。从你的系数对应于用其差分类似物替换表达式(1-x)^n的角度来看,那么......。你也可以考虑一个 "类似例子中的过程 "的一般方案。

然而,这将是出于同一个主题,而其作者,我认为,对他自己提出的问题的答案不感兴趣。虽然我个人也很想看看你提到的一般方案。

 

P/S。从最新的图表来看,我们需要检查交易优化的时机。

 

总而言之,对开放时间的 "反击 "并不明显。

新图表。

图表显示了交易的结束,对于持续15分钟到15小时的交易(主要),可能可以通过时间来调节开盘,但不能 "直接 "调节。我不知道如何过滤关闭。

我不知道如何过滤关闭,我还不知道。

附加的文件:
2018_02_28.zip  441 kb
 

在最后的EA中增加了一个禁用 过滤层 的选项。

纠正了不准确 的地方,即强迫在两个不同的点/条上关闭交易和打开相反的交易(当通过开仓点进行优化时),而不是一个点。

  if(( line1_L0[0] > line2_L0[0] || L0_1_line_power ==0)  &&  (line1_L1[0] > line2_L1[0]  || L1_1_line_power ==0))
     {
      if(
           (
           (line1_L2[0] > line2_L2[0] || L2_1_line_power ==0) && ((New_Time[0]-3600*Start_Hour)%86400 < 3600*Period_Hour)
           )
            || Sell_opened
        )  
        {
         // есть ли в данный момент открытая позиция на покупку?
         if(Buy_opened)
           {
//            Alert("Уже есть позиция на покупку!!!");
            return;    // не добавлять к открытой позиции на покупку
           }        
         if(
             Sell_opened && ( line1_L0[0] > line2_L0[0] || L0_1_line_power ==0) &&  (line1_L1[0] > line2_L1[0]  || L1_1_line_power ==0)
              && (line1_L2[0] > line2_L2[0] || L2_1_line_power ==0) && ((New_Time[0]-3600*Start_Hour)%86400 < 3600*Period_Hour)
           )
            {      LotS = 2*Lot;      }        
            else   LotS = 1*Lot;

如果按层过滤应该被禁用,那么层中第一行的度数必须等于0。如果第二行的度数也变成0,那么我想它会加快计算速度,因为每个周期的额外指标的条件之一将不会被满足。

通过指定一个大于24小时 的允许期限,取消了开放时间过滤。

//=====================================================================================
input int      Start_Hour=0;
input int      Period_Hour=25;

input int     EA_Magic       = 12345;    // Magic Number slippage 
input int     EA_Slippage    = 30;       // Slippage from the current price
//=====================================================================================
//--- глобальные переменные
附加的文件:
 

当然,即使是一个测试性的EA,你也不能在没有正确工作的TP和SL时离开。

   if((line1_L0[0] < line2_L0[0] || L0_1_line_power ==0) &&  (line1_L1[0] < line2_L1[0] || L1_1_line_power ==0) && relay >= 0 )
     {
        relay = -1;
     
      if(
          (
          (line1_L2[0] < line2_L2[0] || L2_1_line_power ==0) && ((New_Time[0]-3600*Start_Hour)%86400 < 3600*Period_Hour)
          )
           || Buy_opened  
        )
        {
         // есть ли в данный момент открытая позиция на продажу?
         if(Sell_opened )
           {
//            Alert("Уже есть позиция на продажу!!!");
            return;    // Ждем исполнения стоп приказа //не добавлять к открытой позиции на продажу
           }
         if(
             Buy_opened  && (line1_L0[0] < line2_L0[0] || L0_1_line_power ==0) &&  (line1_L1[0] < line2_L1[0] || L1_1_line_power ==0) 
             &&  (line1_L2[0] < line2_L2[0] || L2_1_line_power ==0) && ((New_Time[0]-3600*Start_Hour)%86400 < 3600*Period_Hour)  
           )
            {      LotS = 2*Lot;      }        
            else
                   LotS = 1*Lot;

P/S。

让我解释一下,以前TP和SL也有作用,但被它们关闭后,开仓的信号只有最小周期的那一层,而中长周期有条件地被趋势过滤。第二种方案,通过切换,假设在低位和中位时期的主要信号,只在高位时期进行趋势过滤,这更接近于原始想法。

PP/S

进行了TP和SL的优化,看起来第一个选项更有用。

附加的文件: