如何通过 MQL4 程序为所有可用的 MetaTrader 终端 4 历史导出所有指标值?
How to export all indicator values by MQL4 programme for all the available MetaTrader Terminal 4 History?
是否可以从 MetaTrader Terminal 4 导出所有可用的指标值(使用 OHLC
图表数据) MQL4
程序指标?
我已经下载了历史数据,加载到 MT4
,现在我想让 MT4
计算它知道的所有指标(或者从 MQL4
代码中计算)然后做一些数据挖掘。
怎么做这个运行?
对于导出,由于一个简单的单向时间流不需要处理单个 QUOTE
流事件,只需将您想要的设计成一个 MQL4-script
代码类型。
使用MetaEditor
,集成IDE,您甚至可以从最第一步,通过内置的 File->New-[Wizzard]
,您可以在其中选择创建 Script
类型的代码,所有需要的正式代码基础设施都会为您设置。
您只需添加 file-I/O 操作和一个基于 for
的循环来访问您可用历史记录中的所有柱,为此您将重新- 将指标值计算到:
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
// _______________________ setup file-IO
...
// _______________________ FOR-looper:
for ( int aBarPTR = Bars - 1; // start with the oldest Bar
aBarPTR < EMPTY; // till the newest Bar
aBarPTR-- // step fwd one-by-one
)
{
// ____________________ calc all values for [aBarPTR]
....
// ____________________ move all values into file-IO
...
}
// _______________________ close file-IO
return
}
大功告成。
有两种类型 -- 内置指标和自定义指标
提议的方法适用于这两种情况。
Built-in Indicators
使用 MetaEditor
IDE-Help
来列出所有可用的内置指标名称Build-MetaTrader Terminal 4 的实际版本。实施指标的范围可能有所不同。
附上自定义语法突出显示设置的摘录,其中单独列出了内置指标:
# ______________________________________________________________________
#
# New-MQL4.56789 indicatorFUNCs ________________________Build 950_______
keywordclass.indifunc=\
iAC \
iAD \
iADX \
iAlligator \
iAO \
iATR \
iBands \
iBandsOnArray \
iBearsPower \
iBullsPower \
iBWMFI \
iCCI \
iCCIOnArray \
iCustom \
iDeMarker \
iEnvelopes \
iEnvelopesOnArray \
iForce \
iFractals \
iGator \
iIchimoku \
iMA \
iMACD \
iMAOnArray \
iMFI \
iMomentum \
iMomentumOnArray \
iOBV \
iOsMA \
iRSI \
iRSIOnArray \
iRVI \
iSAR \
iStdDev \
iStdDevOnArray \
iStochastic \
iWPR
# ----------------------------------------------------------------------
Custom Indicators
使用相同的 Help
了解有关如何设置和查询您希望的任何其他自定义指标的值的详细信息。只是设置有点繁琐,但可行,Help
中的示例将引导您。
是否可以从 MetaTrader Terminal 4 导出所有可用的指标值(使用 OHLC
图表数据) MQL4
程序指标?
我已经下载了历史数据,加载到 MT4
,现在我想让 MT4
计算它知道的所有指标(或者从 MQL4
代码中计算)然后做一些数据挖掘。
怎么做这个运行?
对于导出,由于一个简单的单向时间流不需要处理单个 QUOTE
流事件,只需将您想要的设计成一个 MQL4-script
代码类型。
使用MetaEditor
,集成IDE,您甚至可以从最第一步,通过内置的 File->New-[Wizzard]
,您可以在其中选择创建 Script
类型的代码,所有需要的正式代码基础设施都会为您设置。
您只需添加 file-I/O 操作和一个基于 for
的循环来访问您可用历史记录中的所有柱,为此您将重新- 将指标值计算到:
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
// _______________________ setup file-IO
...
// _______________________ FOR-looper:
for ( int aBarPTR = Bars - 1; // start with the oldest Bar
aBarPTR < EMPTY; // till the newest Bar
aBarPTR-- // step fwd one-by-one
)
{
// ____________________ calc all values for [aBarPTR]
....
// ____________________ move all values into file-IO
...
}
// _______________________ close file-IO
return
}
大功告成。
有两种类型 -- 内置指标和自定义指标
提议的方法适用于这两种情况。
Built-in Indicators
使用 MetaEditor
IDE-Help
来列出所有可用的内置指标名称Build-MetaTrader Terminal 4 的实际版本。实施指标的范围可能有所不同。
附上自定义语法突出显示设置的摘录,其中单独列出了内置指标:
# ______________________________________________________________________
#
# New-MQL4.56789 indicatorFUNCs ________________________Build 950_______
keywordclass.indifunc=\
iAC \
iAD \
iADX \
iAlligator \
iAO \
iATR \
iBands \
iBandsOnArray \
iBearsPower \
iBullsPower \
iBWMFI \
iCCI \
iCCIOnArray \
iCustom \
iDeMarker \
iEnvelopes \
iEnvelopesOnArray \
iForce \
iFractals \
iGator \
iIchimoku \
iMA \
iMACD \
iMAOnArray \
iMFI \
iMomentum \
iMomentumOnArray \
iOBV \
iOsMA \
iRSI \
iRSIOnArray \
iRVI \
iSAR \
iStdDev \
iStdDevOnArray \
iStochastic \
iWPR
# ----------------------------------------------------------------------
Custom Indicators
使用相同的 Help
了解有关如何设置和查询您希望的任何其他自定义指标的值的详细信息。只是设置有点繁琐,但可行,Help
中的示例将引导您。