MT5中的衍生品市场报价 - 页 10

 

同事们好,让我们总结一下COPY_TICKS_ALL或COPY_TICKS_TRADES的使用方法!!

根据我的理解,为了更正确地计算delta,最好按交易使用ticks,而不是全部使用。对吗?

使用一个或另一个的区别是什么。对结果有什么影响?

 
Mihail Marchukajtes #:

同事们好,让我们总结一下COPY_TICKS_ALL或COPY_TICKS_TRADES的使用方法!!

根据我的理解,为了更正确地计算delta,最好按交易使用ticks,而不是全部使用。对吗?

使用一个或另一个的区别是什么。对结果有什么影响?

你的意思是什么三角洲?

 
Mihail Marchukajtes #:

同事们好,让我们总结一下COPY_TICKS_ALL或COPY_TICKS_TRADES的使用方法吧!!

根据我的理解,为了更正确地计算delta,最好按交易使用ticks,而不是全部使用。对吗?

使用一个或另一个的区别是什么。对结果有什么影响?

我在一个论坛成员的资料中看到了他的截图链接。

要么是他的计算有误,要么是定价公式有误。

不要做广告,只看图片就知道它是什么样子的。

但在我看来,如果计算正确,价格应该准确地击中Last,即没有delta。

股票经纪人自己说,至少在MOEX上,价格是每秒计算一次的。

我不相信这种巨大的计算方法有什么用,我想检查一次,他们就把我的整个杯子翻过来,Last....呢,我很失望,从交易所跑了出来
 
prostotrader #:

你指的是什么delta?

三角洲,是指某一杠子的买家和卖家数量之间的差异。

这里有一段代码,要求提供点数并计算delta和volume。

   Linterest[0]=GlobalVariableGet("LLINTER");

   double delta=0;  
   double vola=0;
   int num= CopyTicksRange(Name_instrFS,tick_array,COPY_TICKS_TRADE,StartDate*1000,Start1Date*1000);
   //Print (num);
   if (num>0){
   long sumVolBuy=0;
   long sumVolSell=0;
       for (int q=0;q<num && !IsStopped();q++)
          { 
if(( tick_array[q].flags&TICK_FLAG_BUY)==TICK_FLAG_BUY && (tick_array[q].flags&TICK_FLAG_SELL)==TICK_FLAG_SELL) // Если тик обоих направлений
      Print(__FUNCTION__,": ОШИБКА! Тик '""' неизвестного направления!");
   else if(( tick_array[q].flags&TICK_FLAG_BUY)==TICK_FLAG_BUY) // Если тик на покупку
   sumVolBuy+=(long)tick_array[q].volume;
   else if(( tick_array[q].flags&TICK_FLAG_SELL)==TICK_FLAG_SELL) // Если тик на продажу
   sumVolSell+=(long)tick_array[q].volume;
           
       if(( tick_array[q].flags&TICK_FLAG_VOLUME)==TICK_FLAG_VOLUME)   vola+=tick_array[q].volume_real; 
          }
    delta=double(sumVolBuy-sumVolSell); 
    if (Ldelta!=delta) Ldelta=delta; else delta=0;
  }
    for (int i=0;i<5 && !IsStopped();i++)
    { 
      h=FileOpen("OpenI\\"+Name_instr+"_OI.csv",FILE_WRITE|FILE_READ|FILE_ANSI|FILE_CSV|FILE_COMMON|FILE_SHARE_READ,";");
       if(h!=INVALID_HANDLE)                                                         
       {  
         
         FileSeek(h,0,SEEK_END);
         FileWrite(h,RecDate,DoubleToString(Linterest[0],0),DoubleToString(delta,0),DoubleToString(vola,0)); 
         FileClose(h); 
         Sleep(100);
         FlagOFupdate[0]= true;
        break; 
       }
    } 

原本在CopyRang中是COPY_TICKS_ALL,但昨天改成了COPY_TICKS_TRADE。这与前面提出的问题相比,会有多大的正确性呢?

 
Mihail Marchukajtes #:

三角洲,是指某一杠子的买家和卖家数量之间的差异。

这里有一段代码,其中发生了ticks请求和delta以及volume的计算。

最初在CopyRang中是COPY_TICKS_ALL,但昨天我把它改为COPY_TICKS_TRADE。这与我之前提出的问题有多大的关系呢?

在你的情况下,你应该只采取COPY_TICKS_TRADE,因为只有交易才有合约量参数

为了使用ASK和BID的合同量,你必须使用一个玻璃

for (int i=0;i<5 && !IsStopped();i++)
    { 
      h=FileOpen("OpenI\\"+Name_instr+"_OI.csv",FILE_WRITE|FILE_READ|FILE_ANSI|FILE_CSV|FILE_COMMON|FILE_SHARE_READ,";");
       if(h!=INVALID_HANDLE)                                                         
       {  
         
         FileSeek(h,0,SEEK_END);
         FileWrite(h,RecDate,DoubleToString(Linterest[0],0),DoubleToString(delta,0),DoubleToString(vola,0)); 
         FileClose(h); 
         Sleep(100);
         FlagOFupdate[0]= true;
        break; 
       }
    } 

这是一个相当可悲的代码。

在每次迭代中,你都要打开和关闭文件。

 
prostotrader #:

在你的情况下,只应该采取COPY_TICKS_TRADE,因为只有交易有合约量参数

为了使用ASK和BID合同量,你需要使用一个玻璃

这是一个相当可悲的代码。

在每次迭代中,你都要打开和关闭文件。

如果第一次尝试是成功的,那么没有,但数据是在一分钟的开始写的,对于前一个条形图是相当好的记录OI、delta和成交量!!。
 
Mihail Marchukajtes #:
如果第一次尝试是成功的,那么就没有,但数据是在分钟开始时写入的,对于记录OI、delta和成交量来说是相当不错的

你能给我看一张截图吗?

 
Renat Akhtyamov #:

我可以看一下屏幕截图吗?

是的,请....

你看,一切都写得很好,但要知道记录所有刻度或只是交易的区别是不可能的。我不想麻烦。毕竟,对于NS来说,微不足道的偏移和误差并不重要,最主要的是训练后的数据没有改变,因为在用NS初始化EA时,它必须正确计算到当前时刻的历史,以便下一次从当前正确的参数开始计算。如果初始化不正确,最后一个已知信号的当前值将是不同的,新信号将从其他位置开始计算,这将导致不可预知的结果。因此,你如何做并不重要,即使有错误也没关系。最主要的是在训练后不要改变它!!!!。

 
Mihail Marchukajtes #:

是的,很容易....

你看,一切都写得很好,但要知道记录所有刻度或只是交易的区别是不可能的。我不想麻烦。毕竟,对于NS来说,不重要的偏移和误差并不重要,最主要的是训练后的数据没有改变,因为在用NS初始化EA时,它必须正确计算到当前时刻的历史,以便下一次从当前正确的参数开始计算。如果初始化做得不正确,最后一个已知信号的当前值将是不同的,新信号将从其他位置开始计算,这将导致不可预知的结果。因此,你如何做并不重要,即使有错误也没关系。最主要的是在训练后不要改变它!!!!。

Excel中的行数是有限制的。如果机器抛出,请记住它。最好是使用sql。从截图上看,计算的结果是什么,实际意义是什么?
 
Renat Akhtyamov #:
excel中的行数是有限制的。如果机器抛出,请牢记这一点。更好的sql。从截图上看,计算的结果是什么,实际意义是什么?

一个普通的CWS文件被写入。

分别收集OI历史、delta和成交量。100%的数据在历史上不会被改变,更不用说没有OI历史这样的数据。我上面给出的计算记录参数的代码....

原因: