任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 1113

 
Mislaid:

你需要一个周末的脚本。

我在工作日工作。这就是我使用指标的原因。我给它一个工具清单,它要求在它所在的图表上提供时间框架的报价。我不屑于处理错误。十几分钟后,一切都稳定下来了。

我完全忘记了。如果你需要保存历史记录,该符号的图表必须打开。

我们不能保持超过100个图表的开放。我们需要在9个时间段内的100个货币对=900张图表。

市场已经启动。但无论是CopyTime,还是ArrayCopySeries的调用,都没有自动补充来自MarketWatch的工具的历史。
这些仪器的图表从未被打开过。
必须有一个解决方案。

例如,AUDCAD。这个符号没有公开的图表。如果我手动打开图表AUDCAD H1并按下按钮,历史记录将被加载。在其他时间段也是如此--只是在手动模式下,它不愿意自动做。
 
总之,我写了一个脚本,在块中打开几十个图表,模拟按Home键,然后关闭图表
这样做有一个拐杖的作用,但它也把历史换成了新的人物。
 

下午好,亲爱的论坛成员。请不要受伤,我只是在写论文,想做一些社会学研究。可以肯定的是,有些人曾经买过一次或几次EA。请告诉我们,在购买时,哪些标准对你来说是重要和关键的?例如,它可能是。

-专家顾问的类型(趋势、SESH、MARTINGALE、SALPER...)。

-战略测试员中 的历史

-专家顾问的一些具体功能

-详细描述了EA的工作方式和设置方法

-卖家评级

- EA价格

-运动和折扣

也可能是其他东西。

你对你的购买感到满意吗?

非常感谢您的理解和回答

 
Konstantin Zubrilin:

下午好,亲爱的论坛成员。请不要受伤,我只是在写论文,想做一些社会学研究。可以肯定的是,有些人曾经买过一次或几次EA。请告诉我们,在购买时,哪些标准对你来说是重要和关键的?例如,它可能是。

-专家顾问的类型(趋势、塞斯、马丁格尔、黄牛...)。

-战略测试员中 的历史

-专家顾问的一些具体功能

-详细描述了EA的工作方式和设置方法

-卖家评级

- EA价格

-运动和折扣

也可能是其他东西。

你对你的购买感到满意吗?

非常感谢您的理解和回答

你应该创建一个投票,最好是在英语主题中,那里有更多的平度人。
 

你能告诉我错误在哪里吗?计算数组元素Koef[]的值,每个元素都被分配一个值。为什么没有分配Buffer1[]?

#property copyright "Copyright 2016, T"
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_level1 0.8
#property indicator_level2 -0.8
#property indicator_levelcolor Black
#property indicator_color1 Blue
#property indicator_minimum -1
#property indicator_width1 2
#property indicator_style1 0
#property indicator_maximum 1

double Buffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//--- indicator buffers mapping
  SetIndexBuffer(0, Buffer1);
  SetIndexStyle(0, DRAW_LINE);
  return(0);
//---
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
   {
   int n=25;                                                            // количество элементов в массиве(для периода H1 n=25, тк i<n)
   int m=24;                                                            // количество массивов(для периода H1 m=24, тк p=0, p<m)
   int w=18;                                                            // количество заков после запятой
  
   double Price_CloseX[][24];                                           // Массив цен закрытия 1 пары  
   double Price_CloseY[][24];                                           // Массив цен закрытия 2 пары
   double dx[][24];                                                     // Отклонение от среднего значения для пары 1 dx
   double dy[][24];                                                     // Отклонение от среднего значения для пары 2 dy
   double dx2[][24];                                                    // Квадрат отклонения ср.значения dx2
   double dy2[][24];                                                    // Квадрат отклонения ср.значения dy2
   double dxdy[][24];                                                   // Произведение dx и dy
  
   double sum_x[][24];
   double sum_y[][24];
  
   double Mx[][24];                                                         // Массив среднего значения цен закрытия пары 1 Mx
   double My[][24];                                                         // Массив среднего значения цен закрытия пары 2 My
  
   double Edx2[][24];                                                       // Сумма квадратов отклонений Edx2
   double Edy2[][24];                                                       // Сумма квадратов отклонений Edy2
   double Edxdy[][24];                                                      // Сумма произведений отклонений Edxdy
  
   double Koef[];
  
   ArrayResize(Price_CloseX, n);
   ArrayResize(Price_CloseY, n);
   ArrayResize(dx, n);
   ArrayResize(dy, n);  
   ArrayResize(dx2, n);
   ArrayResize(dy2, n);
   ArrayResize(dxdy, n);
   ArrayResize(sum_x, n);
   ArrayResize(sum_y, n);
   ArrayResize(Mx, n);
   ArrayResize(My, n);
   ArrayResize(Edx2, n);
   ArrayResize(Edy2, n);
   ArrayResize(Edxdy, n);
   ArrayResize(Koef, n);
  
   string sym_x="EURUSD";
   string sym_y="GBPUSD";
  
   for(int i=1; i<n; i++)
      {
      for(int p=0; p<m; p++)
         {
         Price_CloseX[i][p]=iClose(sym_x, PERIOD_H1, i+p);
         Price_CloseY[i][p]=iClose(sym_y, PERIOD_H1, i+p);
        
         }
      }
      
    for(int i=1; i<n; i++)
      {    
      for(int p=0; p<m; p++)
         {  
         sum_x[i][p]=sum_x[i][p-1]+Price_CloseX[i][p];                                        
         sum_y[i][p]=sum_y[i][p-1]+Price_CloseY[i][p];
        
         }        
      }
  
   for(int i=1; i<n; i++)
      {    
      for(int p=0; p<m; p++)
         {      
         Mx[i][p]=sum_x[p+1][m-1]/(n-1);  
         My[i][p]=sum_y[p+1][m-1]/(n-1);
                
         }
       }
  
   for(int i=1; i<n; i++)
      {
      for(int p=0; p<m; p++)
         {
         dx[i][p]=Price_CloseX[i][p]-Mx[i][p];
         dy[i][p]=Price_CloseY[i][p]-My[i][p];
        
         }
      }
    
   for(int i=1; i<n; i++)                                                                  
      {
      for(int p=0; p<m; p++)
         {
         dx2[i][p]=(dx[i][p]*dx[i][p])*1000000;
         dy2[i][p]=(dy[i][p]*dy[i][p])*1000000;
        
         }
      }
    
   for(int i=1; i<n; i++)                                                                  
      {
      for(int p=0; p<m; p++)
         {
         dxdy[i][p]=(dx[i][p]*dy[i][p])*1000000;
        
         }
      }  
                        
   for(int i=1; i<n; i++)                                                                  
      {
      for(int p=0; p<m; p++)
         {
         Edx2[i][p]=(Edx2[i-1][p]+dx2[i][p]);                                        
         Edy2[i][p]=(Edy2[i-1][p]+dy2[i][p]);
         Edxdy[i][p]=(Edxdy[i-1][p]+dxdy[i][p]);
         }
      }
  

      for(int p=0; p<m; p++)
         {
         Koef[p]=Edxdy[n-1][p]/sqrt(Edx2[n-1][p]*Edy2[n-1][p]);
         Buffer1[p]=Koef[p];
         Alert("Коэффициент корреляции Пирсона между ", sym_x, " и ", sym_y, " равен ", DoubleToString(Koef[p], w));
         Alert("Значение буфера ", p, " равно ", Buffer1[p]);
         }
   return(0);
   }
 
日安!我是否正确理解,在tp=2,sl=20和spread=2的情况下,tp的概率=(2+2)/(20-2)=0.22....。还是我需要乘以某个系数?而如果真正的tp=0.22,那么在理想情况下,我们可以在这些参数下连续开出3笔交易,而4笔交易要跳过?
也许有类似的主题?请给我一个链接。
 
bobrush:
日安!我的理解是否正确,在tp=2,sl=20和spread=2的情况下,tp的概率=(2+2)/(20-2)=0.22....。还是我需要乘以某个系数?而如果真正的tp=0.22,那么在理想情况下,我们可以在这些参数下连续开出3笔交易,而4笔交易要跳过?
也许有类似的主题?请给我一个链接。

我不会给一个链接,人们的想法不同。我建议从建造圣杯 无望的原则出发。在这种情况下,在给定的TP和SL,可以表述如下。

在没有价差的情况下,任何一系列具有相同SL和相同TP的交易的预期回报都是零。

没有价差的预期利润等于P(TP)*TP-P(SL)*SL=0,其中SL和TP是交易开仓水平到其水平的距离,P分别是SL或TP完成交易的概率。

从所有交易完成的条件来看,P(TP)+P(SL)=1,其中P(TP)*TP-(1-P(TP))*SL=0,P(TP)*(TP+SL)=SL和

p(tp)=sl/(sl+tp)。

为了将价差考虑在内,我们必须用价差大小的损失预期来代替零利润预期,P(TP)*TP-P(SL)*SL=Spread,并推导出所需的公式。

 
Vladimir:

我不会给一个链接,人们的想法不同。我建议从建造圣杯无望的原则出发。在这种情况下,对于给定的TP和SL,可以表述如下。

在没有价差的情况下,任何一系列具有相同SL和相同TP的交易的预期回报都是零。

没有价差的预期利润等于P(TP)*TP-P(SL)*SL=0,其中SL和TP是交易开仓水平到其水平的距离,P分别是SL或TP完成交易的概率。

从所有交易完成的条件来看,P(TP)+P(SL)=1,其中P(TP)*TP-(1-P(TP))*SL=0,P(TP)*(TP+SL)=SL和

p(tp)=sl/(sl+tp)。

为了将价差考虑在内,我们需要用等于价差的预期损失来代替零预期报酬,P(TP)*TP-P(SL)*SL=价差,并推导出所需的公式。

问及系数,我记得类似C(n,k),即P(x)=C(n,k)*P(y/x)....。总之,我很困惑......我得翻翻这本书。
 
bobrush:
问及系数,我记得类似C(n,k),即P(x)=C(n,k)*P(y/x).....。总之,我很困惑......我得翻翻这本书。

如果我们谈论的是关于概率论的书籍,从n由k组合的数量C(n,k)的提示来看,这是组合学,那么概率论中提出的问题就没有答案。具体而言,公式P(TP)*TP-P(SL)*SL=0

我从经验上得到了它。在寻找这样一个SL和TP的组合,可以得到哪怕是最小的统计学意义上的偏离零。25种货币对的tick 历史数据库从50-60个交易中心收集了大约300周,当时有500亿tick。我已经尝试了几十种定期或假性随机开放交易的方法。不含价差的利率被认为是买入和卖出的算术平均值。

 
Vladimir:

如果我们谈论的是关于概率论的书籍,从n由k组合的数量C(n,k)的提示来看,这是组合学,那么概率论中提出的问题就没有答案。具体而言,公式P(TP)*TP-P(SL)*SL=0

我从经验上得到了它。在寻找这样一个SL和TP的组合,可以得到哪怕是最小的统计学意义上的偏离零。25种货币对的tick 历史数据库从50-60个交易中心收集了约300周,当时有500亿tick。我已经尝试了几十种定期或假性随机开放交易的方法。不含价差的利率被认为是买入和卖出的算术平均值。

这意味着理论和实践是一致的。300个星期比5年多,只是为了证实理论?
事实证明,无论你如何打开交易,即使是通过随机,即使是通过信号,结果都是一样的:M(x)=0?