交易中的机器学习:理论、模型、实践和算法交易 - 页 966

 
Mihail Marchukajtes:

我做了,然后论坛故障了,所以从图片上看,至少我做到了......。

该论坛一直在进行......在R中使用xgboost 而不是eclmn或任何你使用的c...ni。

我很快就会把一些东西翻译成python和boosting,看看有什么改进。
 
马克西姆-德米特里耶夫斯基

将xgboost插入R,而不是eclmn或你正在使用的任何c...ni。

我将很快把一些东西翻译成python和boosting,看看会有什么改进。

已下载。安装好了。但我认为没有医生的帮助,我无法做到。那是如果他发布了一个带有如何使用它的例子的脚本。那么我想就有可能去尝试。再次,将模型转移到MT的问题?我不希望建立桥梁或其他东西。我怎样才能将模型从xboost转移到MT4?

 
Mihail Marchukajtes:

已下载。安装了它。但我认为没有博士,我也做不到。但是,如果他贴出一个带有如何使用的例子的脚本。那么我想就有可能去尝试。再次,将模型转移到MT的问题?我不希望建立桥梁或其他东西。我怎样才能把模型从xboost转移到MT4?

我不知道,这是给那些从事xboost的人的问题。

我将使用python。我可以用xgb把它连接到终端,我应该问问那些知道dll的人,我不知道怎么做。

这里有一篇文章是关于Python的正常的https://www.analyticsvidhya.com/blog/2016/03/complete-guide-parameter-tuning-xgboost-with-codes-python/

而作者在另一篇文章中对GBM进行了比较(让你了解助推器的作用)。

 

从链接的例子中给xgb充电,但在笔记本电脑的GPU上 - 它的工作原理:)你可以得到10倍的速度提升,尽管它已经相当快了。

而事实证明,dll可以直接从MT4/5调用,甚至支持GPU。这只是一个对主题有更好理解的问题

 
马克西姆-德米特里耶夫斯基

哼,这是给那些喜欢R的人的。

我将连接python。我的想法是,xgb甚至可以通过dll连接到终端,你要问那些擅长dll的人,我不知道。

这里有一篇文章是关于Python的正常的https://www.analyticsvidhya.com/blog/2016/03/complete-guide-parameter-tuning-xgboost-with-codes-python/

而作者在另一篇文章中对GBM进行了比较(只是想看看助推器的作用)。

xgb的话题千疮百孔,从安装、构建等方面入手。Yandex的库在这方面比较一致https://tech.yandex.com/catboost/doc/dg/concepts/about-docpage/

CatBoost — Overview of CatBoost — Yandex Technologies
CatBoost — Overview of CatBoost — Yandex Technologies
  • tech.yandex.com
is a machine learning algorithm that uses gradient boosting on decision trees. It is available as an open source library.
 
伊万-内格雷什尼

我将尝试在MT5中使用xgb并自己运行。xgb是一个非常棘手的问题,从安装、bilding等开始。Yandex的库在这方面比较一致https://tech.yandex.com/catboost/doc/dg/concepts/about-docpage/

不,这很简单,你建立lib并安装它。已经有组装好的,你只需要从本地文件夹复制和安装lib,也适用于gpu。

gpu对升压模型的速度提升不大,因为模型是串联建立的,只有独立树中的分片才会并联,所以没有意义

至于catbust,轻型的GBM和其他的都很差(有点假):)至少网友是这样写的

我将尝试在MT5中使用它

 
马克西姆-德米特里耶夫斯基

不,这很简单,你建立lib并安装它。已经有组装好的,你只需要从本地文件夹复制和安装lib,也适用于gpu。

gpu对boost模型提供了一个小的速度,因为模型是按顺序建立的,只有独立树中的分片才会被并联,所以没有任何意义

猫头鹰、轻型GBM和其他的都是劣质的(有点假):)至少网友是这么写的

我有很多经验,但在我看来,乍一看有很多变化,但我希望有更多结果稳定的MO,而不是萨满教:)))。

 
Ivan Negreshniy:

我可能有很多这方面的经验,但在我看来,第一眼就觉得有很多变化,我还是希望有更多结果稳定的MO,而不是萨满教:)))。

是的,它仍然需要调整......我会给它一个机会。

找到了一个Sharps导入 dll字体的包装器......只是不知道它是否默认为交叉验证......可能是一个单独的包装器。

https://github.com/PicNet/XGBoost.Net/blob/master/XGBoost/lib/XGBOOST_NATIVE_METHODS.cs

 
//+------------------------------------------------------------------+
//|                                                      xgboost.mq5 |
//|                                 Copyright 2018, Max Dmitrievskiy |
//|                        https://www.mql5.com/ru/users/dmitrievsky |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, Max Dmitrievskiy"
#property link      "https://www.mql5.com/ru/users/dmitrievsky"
#property version   "1.00"
#import "xgboost.dll"
string XGBGetLastError();
int XGDMatrixCreateFromMat(float&[],ulong nrow,ulong ncol,float missing,int handle);
int XGDMatrixFree(int handle);
int XGDMatrixGetFloatInfo(int handle,string field, ulong len, int result);
int XGDMatrixSetFloatInfo(int handle,string field,float&[],ulong len);
int XGBoosterCreate(int&[],ulong len, int handle);
int XGBoosterFree(int handle);
int XGBoosterSetParam(int handle,string name,string val);
int XGBoosterUpdateOneIter(int bHandle,int iter,int dHandle);
int XGBoosterPredict(int bHandle,int dHandle,int optionMask,int ntreeLimit, ulong predsLen, int predsPtr);
int XGBoosterSaveModel(int bHandle,string fileName);
int XGBoosterLoadModel(int bHandle,string fileName);
int XGDMatrixCreateFromFile(string fname,int silent, int DMtrxHandle);
int XGBoosterDumpModel(int handle,string fmap,int with_stats, int out_len, int dumpStr);
#import
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//--

   int a[1]={1};
   ulong ab=1;
   int hnd=1;
   XGBoosterCreate(a, ab, hnd);
  }
//+------------------------------------------------------------------+

我不认为我自己能做到,毕竟我得用Python。

2018.05.31 15:00:17.587 xgboost (EURUSD,M15)    Access violation at 0x00007FFA5D7BA68E read to 0xFFFFFFFFFFFFFFFF in 'C:\Users\dmitrievsky\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Libraries\xgboost.dll'
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)       crash -->  00007FFA5D7BA68E 498B4708          mov        rax, [r15+0x8]
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA692 4885C0            test       rax, rax
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA695 7404              jz         0x7ffa5d7ba69b
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA697 F0FF4008          lock inc        dword [rax+0x8]
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA69B 498B07            mov        rax, [r15]
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA69E 488904DE          mov        [rsi+rbx*8], rax
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)                  00007FFA5D7BA6A2 498B4708          mov        rax, [r15+0x8]
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    00: 0x00007FFA5D7BA68E
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    01: 0x000000005B0FAB91
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    02: 0x0000000000000001
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    03: 0x0000000000000246
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    04: 0x00007FF784D2BBB4
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    05: 0x00007FF784D2B933
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    06: 0x00007FF7851BEA5E
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    07: 0x00007FF7851BD979
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    08: 0x00007FF784C09A90
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    09: 0x00007FFA870C3034
2018.05.31 15:00:17.592 xgboost (EURUSD,M15)    10: 0x00007FFA87531551
 
马克西姆-德米特里耶夫斯基

是的,它仍然需要调整......好吧,我会试一试。

找到了一个Sharps包装器来导入dll字体......只是没有意识到没有默认的交叉验证,它似乎是单独出现的。

https://github.com/PicNet/XGBoost.Net/blob/master/XGBoost/lib/XGBOOST_NATIVE_METHODS.cs

IMHO,你必须先在Python中工作,因为它或多或少已经建立起来了,否则会有很多不确定性

原因: