你是如何对MA饲料集群的检测进行算法的? - 页 18

 

这些是当地的高点。在它们周围建一个 "之 "字形,比如从上到下。想一想你将用什么标准来建立它们。例如,水平方向的条形值之间的差异大小,或垂直方向的超额距离(点的数量),或两者的组合。

 
Mikhail Toptunov:

看,在统计学中,有一种计算蓝线的方法,不是吗?


你怎么就......?

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

我怎样才能对MA饲料的检测进行算法?

Aleksei Stepanenko, 2021.04.07 15:10

在一个排序的数组中找到,例如,第90个百分位数。比这更高的都是特别高。

 
Mikhail Toptunov:

你好,谁能告诉我哪些统计模型可以用来确定那些特别高的数值?

RMS
 

谁能建议一个SQL查询。为什么我不能在第五栏写0?

   filename=_symbol()+(string)_Period+"_stats.sqlite";
   int database=DatabaseOpen(filename, DATABASE_OPEN_READWRITE | DATABASE_OPEN_CREATE | DATABASE_OPEN_COMMON);
   if(database==INVALID_HANDLE)
     {
      Print("SS: ", filename, " open failed with code ", GetLastError());
      return;
     }
   if(DatabaseTableExists(database, "DEALS"))
     {
      //--- создадим запрос и получим хендл на него
      int request=DatabasePrepare(database, "SELECT * FROM DEALS WHERE ID="+IntegerToString(i));
      if(!DatabaseBind(request,4,0))
        {
         PrintFormat("DatabaseBind() failed with code=%d", GetLastError());
         return;
        }
     }
   DatabaseClose(database);
DatabaseBind()失败,代码=5625
 
Renat Akhtyamov:
RMS

+

 

全部完成。你需要得到正确的查询,你不需要不必要的函数


  int database=DatabaseOpen(filename, DATABASE_OPEN_READWRITE | DATABASE_OPEN_CREATE | DATABASE_OPEN_COMMON);
   if(database==INVALID_HANDLE)
     {
      Print("SS: ", filename, " open failed with code ", GetLastError());
      return;
     }
//--- заблокируем базу данных перед выполнением транзакций
//--- пройдем по всем сделкам и внесем их в базу данных
   bool failed=false;
   DatabaseTransactionBegin(database);
//--- внесем в таблицу каждую сделку через запрос
   string request_text="UPDATE DEALS SET Activity=1, timeClose="+(string)tc+" WHERE ID="+(string)i+"OR ID="+(string)(i+1);
   if(!DatabaseExecute(database,request_text))
     {
      PrintFormat("%s: failed to insert deal #%d with code %d", __FUNCTION__, i, GetLastError());
      failed=true;
     }
   if(failed)
     {
      //--- откатим все транзакции и разблокируем базу данных
      DatabaseTransactionRollback(database);
      PrintFormat("%s: DatabaseExecute() failed with code ", __FUNCTION__, GetLastError());
      DatabaseClose(database);
      return;
     }
   PrintFormat("Закрытие сделки ID: %d ", DealOpen[i].ID);
//--- все транзакции прошли успешно - зафиксируем изменения и разблокируем базу данных
   DatabaseTransactionCommit(database);
   DatabaseClose(database);
 

你好,请你告诉我如何获得卖出、买入的刻度值?

我的系统中集成了一个加密货币交易所。

问题是,在市场概览和图表本身中,报价显示正确,但当通过.NET请求时,报价就不正确。

   MqlTick last_tick;
   SymbolInfoTick(Symbol(),last_tick);
   ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);
   bid=SymbolInfoDouble(Symbol(),SYMBOL_BID);
   Comment(": Bid = ",bid," Ask = ",ask," tick Time ",TimeToString(last_tick.time,TIME_SECONDS),
           "\n"," Ls_bid ",last_tick.bid," Ls_ask ",last_tick.ask);

报价停止正确反映。一般的无赖!!!!!!!!!!


我还可以通过什么方式获得价值?

我在问分析师,请不要路过!我一生中三分之一的时间都在开发一个机器人,终点线在地平线上隐约可见,而且还有那么多的麻烦!"。

看起来这个错误是在周末出现的,怎么会...

 
Mikhail Toptunov:

例子。

30个MA价格值的数组,寻找有序数组的中间

我们在数组的中间得到15(L0) 的值,然后我们从L0向下和L0向上得到两个数组,并找到这些数组的中间,以此类推,直到我们得到fokus(例如七个值)。

MA的一阶导数:(X(0)-X(n))/(n+1).我们需要两个数组的中间部分,或者我们可以通过简单的分析法来完成?

 
Алексей Тарабанов:

MA的一阶导数:(X(0)-X(n))/(n+1)。 需要两个数组的中间,还是可以用简单的分析法?

谢谢,但我已经从那件事中走出来了。

刚刚开始寻找感兴趣的条形图上的第n个MAs的分形。