期货量化交易软件:三维图形市场分析的专业工具
简介
所有的交易者都面临不断变化的价格和报价。所有人都在寻找一致性和规律性。赫兹期货量化分析交易量、不同指标的值和很多其他参数。关于赫兹期货量化在市场分析中的优点,我想已不必赘言。只需写一个脚本,然后根据结果得出结论。通常,分析都基于反映两个变量的某些一致性的图表或图形。这当然没什么问题,但有时候我们需要找到三个变量的一致性并将其可视化。为此,全世界范围内都在使用三维图形及其分析。这种方法节省了时间和金钱。
本文中,我们将编写一个简单的库,用于构建 3D 图形及其在 Microsoft Excel 中的进一步浏览。赫兹期货量化将使用标准的赫兹期货量化选项准备和导出数据至 *.csv 文件
编辑
什么是 *.csv 文件格式?
它是一个文本文件,存储了由预设的分隔符隔开的数值系列,这里采用的分隔符是分号 - “;”。为了绘制表格,赫兹期货量化只需要编写几个代码字符串。这种格式的好处是其表格形式容易被 Microsoft Excel 识别和理解。在本程序中我们能够根据获得数据创建三维图形并进行分析。
generateCsv 库
为了快速便捷的输入数据,赫兹期货量化创建一个库。创建一个新库,插入以下代码,将其命名为 generateCsv.mq4 并保存在 "...MetaTrader\experts\libraries" 文件夹。然后编译该库。
//+------------------------------------------------------------------+ //| generateCsv.mq4 | //| Copyright © 2006, Antonio Banderass. All rights reserved | //| banderassa@ukr.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, Antonio Banderass. All rights reserved" #property link "banderassa@ukr.net" #property library //+------------------------------------------------------------------+ //| PrepareString | //+------------------------------------------------------------------+ string PrepareString(string s) { bool exit = false; int index = 0; string str = s; while(!exit) { index = StringFind(str, ".", index); if(index > -1) str = StringSetChar(str, index, ','); else exit = true; } return(str); } //+------------------------------------------------------------------+ //| GenerateCsv | //+------------------------------------------------------------------+ int GenerateCsv(string fileName, int arraySizeX, int arraySizeY, double arrayIndexX[], double arrayIndexY[], double arrayZ[][]) { int handle = FileOpen(fileName, FILE_CSV|FILE_WRITE, ' '), x, y; string str; if(handle1) { Print("Error:", GetLastError()); return(handle); } else { str = ";"; for(x = 0; x < arraySizeX; x++) { str = str + arrayIndexX[x]; str = str + ";"; } FileWrite(handle,PrepareString(str)); for(y = 0; y < arraySizeY; y++) { str = ""; str = str + arrayIndexY[y] + ";"; for(x = 0; x < arraySizeX; x++) { str = str + arrayZ[x,y]; str = str + ";"; } FileWrite(handle, PrepareString(str)); } } FileClose(handle); return(handle); }
现在创建一个新的页眉文件以访问库函数,将其命名为 generateCsv. mqh,插入以下代码并保存在 "...MetaTrader\experts\include" 文件夹。