EA编程教程第二讲-数据类型
- 格式:doc
- 大小:54.00 KB
- 文档页数:11
字串符类型数据的一组函数。
StringConcatenateStringFindStringGetCharStringLenStringSetCharStringSubstrStringTrimLeftStringTrimRightstring StringConcatenate( ...)数据的字串符形式通过并且返回。
参量可以为任意类型。
通过参量的总数不得超过64个字符。
作为应用到Print(), Alert() 和Comment()函数的参量按照同样规则传送。
从函数参量返回获取的字符串作为连接结果。
当字串符连续使用(+)添加时,StringConcatenate() 运行较快并且会存储。
参量:... - 所有价格值由逗号分开。
它可以是64个参量。
示例:string text;text=StringConcatenate("Account free margin is ", AccountFreeMargin(), "Current ti me is ", TimeToStr(TimeCurrent()));// 文本="Account free margin is " + AccountFreeMargin() + "Current time is " + Tim eToStr(TimeCurrent())Print(text);int StringFind( string text, string matched_text, void start)搜索子字串符。
如果未找到子字串符,从搜索子字串符开始返回字串符中的位置,或是-1。
参量:text - 被搜索的字符串。
matched_text - 需要搜索的字符串。
start - 搜索开始索引位置。
示例:string text="快速的棕色小狗跨越过懒惰的狐狸";int index=StringFind(text, "小狗跨越", 0);if(index!=16)Print("oops!");int StringGetChar( string text, int pos)从字串符指定位置返回代码。
一、Enterprise Architect简介Enterprise Architect是一个对于软件系统开发有着极好支持的CASE软件(Computer Aided Software Engineering)。
EA不同于普通的UML画图工具(如VISIO),它将支撑系统开发的全过程。
在需求分析阶段,系统分析与设计阶段,系统开发及部署等方面有着强大的支持,同时加上对10种编程语言的正反向工程,项目管理,文档生成,数据建模等方面。
可以让系统开发中各个角色都获得最好的开发效率。
二、创建新项目安装好了EA汉化版后,启动软件。
点击“创建新的项目”,打开创建新项目对话框。
【图1】这里可以选择各种的初始的模板包。
【图2】我们选择了其中几个,然后确定打开了项目浏览器。
我们的项目将从这里开始了。
【图3】三、EA软件配置在使用软件之前,我们先来对它进行配置。
打开“工具”-->“选项”。
【图4】常规配置中,比较重要的是作者这项。
因为在EA项目的团队协作中,作者是每个人的身份标识。
在代码工程中,最好把文件编码设置成UTF8或者是GB中文。
其他方面的配置,因为都是中文的,也比较容易理解。
有些不明的地方,可以多琢磨。
另外对于最下面的十种编程语言,可以根据自己的需要,进行一些配置。
比如PHP,可以配置PHP4或者是PHP5,那么生成的代码也是有些不同的。
还可以隐藏其他没有用到的语言。
四、用例图,类图的使用用例图(use case)用例图是我们做系统分析的通常第一步,是非常重要的。
毕竟大部分的开发流程,都将需求分析作为首要步骤,也是必要步骤。
将系统需求化作图型表达出来。
首先是在项目浏览器中,右键“添加”-->“新建图表”。
【图5】然后可以加入一些角色和用例,在每次在工具箱里面拉出一个元件,都将打开这个元件的设置对话框,在对话框内填入元件的名称等信息。
现在我们是表达一个用户注册和登录的场景:【图6】加入关联,用例图中最常用的关联是“使用use”,当然也经常会用到“包含include”“扩展extend”。
数据类型详解(1)整数型整数包括bigint、int、smallint和tinyint,从标识符的含义就可以看出,它们的表⽰数范围逐渐缩⼩。
lbigint:⼤整数,数范围为-263(-9223372036854775808)~263-1(9223372036854775807),其精度为19,⼩数位数为0,长度为8字节。
lint:整数,数范围为-231(-2,147,483,648)~231-1(2,147,483,647),其精度为10,⼩数位数为0,长度为4字节。
lsmallint:短整数,数范围为-215(-32768)~215-1(32767),其精度为5,⼩数位数为0,长度为2字节。
ltinyint:微短整数,数范围为0~255,长度为1字节,其精度为3,⼩数位数为0,长度为1字节。
(2)精确整数型精确整数型数据由整数部分和⼩数部分构成,其所有的数字都是有效位,能够以完整的精度存储⼗进制数。
精确整数型包括decimal和numeric两类。
从功能上说两者完全等价,两者的唯⼀区别在于decim 声明精确整数型数据的格式是numeric|decimal(p[,s]),其中p为精度,s为⼩数位数,s的缺省值为0。
例如指定某列为精确整数型,精度为6,⼩数位数为3,即decimal(6,3),那么若向某记录的该列赋值56 decimal和numeric可存储从-1038+1到1038–1的固定精度和⼩数位的数字数据,它们的存储长度随精度变化⽽变化,最少为5字节,最多为17字节。
l精度为1~9时,存储字节长度为5;l精度为10~19时,存储字节长度为9;l精度为20~28时,存储字节长度为13;l精度为29~38时,存储字节长度为17。
例如若有声明numeric(8,3),则存储该类型数据需5字节,⽽若有声明numeric(22,5),则存储该类型数据需13字节。
注意:声明精确整数型数据时,其⼩数位数必须⼩于精度;在给精确整数型数据赋值时,必须使所赋数据的整数部分位数不⼤于列的整数部分的长度。
16.数据类型(data_type)CREATE TABLE 语句CREATE TABLE 语句⽤于创建数据库中的表。
SQL CREATE TABLE 语法CREATE TABLE 表名称(列名称1 数据类型,列名称2 数据类型,列名称3 数据类型,....)数据类型(data_type)规定了列可容纳何种数据类型。
下⾯的表格包含了SQL中最常⽤的数据类型:数据类型描述integer(size)int(size)smallint(size)tinyint(size)仅容纳整数。
在括号内规定数字的最⼤位数。
decimal(size,d) numeric(size,d)容纳带有⼩数的数字。
"size" 规定数字的最⼤位数。
"d" 规定⼩数点右侧的最⼤位数。
char(size)容纳固定长度的字符串(可容纳字母、数字以及特殊字符)。
在括号中规定字符串的长度。
varchar(size)容纳可变长度的字符串(可容纳字母、数字以及特殊的字符)。
在括号中规定字符串的最⼤长度。
date(yyyymmdd)容纳⽇期。
SQL CREATE TABLE 实例本例演⽰如何创建名为 "Person" 的表。
该表包含 5 个列,列名分别是:"Id_P"、"LastName"、"FirstName"、"Address" 以及 "City":CREATE TABLE Persons(Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))Id_P 列的数据类型是 int,包含整数。
其余 4 列的数据类型是 varchar,最⼤长度为 255 个字符。
二.创建工程依次点击“File->New Project->命名保存->在“Select model”中选择需要创建的类型(如图-1)->单击“OK”确认,得到界面如图-2所示图-1:创建工程Business Process 业务流程Requirements需求分析Use Case用例Domain Model领域模型Class类设计Database数据库设计Component组件Deployment部署Testing测试Maintenance维护Project Management项目管理User Interface用户接口表-1:创建项目的常见类型图-2:创建项目后界面截图三.一些基本的通用设置设置默认代码环境依次点击:“Tool->Options-Source Code Engineering->Default Language For Code Ge neration->C#”如图3所示,完成:单击“Close”确认退出。
图-3:设置默认代码环境设置默认数据库依次点击:“Tool->Options- Code Editors->Default Database->SQL Server 2005”如图4所示:图-4:设置默认数据库四.Class模型.创建“Class”模型依次点击“File->New Project->命名保存->在“Select model”中勾选“Class”,最后单击“确定”进入设计界面。
在设计界面的左边是工具箱(如图5)图-5:类模型工具栏Class Elements Common Package包Note注释Class类Constraint约束条件Interface接口Document文档:附加文档附件Enumeration枚举Artifact人工:表示任意的系统任意的Table表Requirement需求描述Signal对象通信信号的描述Issue问题描述Association关联Change变化描述Class Relationships Boundary分界线Associate关联Dependency依赖关系Generalize泛化Realize实现Compose组成Trace追踪Associate Class关联类Information Flow数据流Assembly程序集Note Link注释链接Realize实现??Nesting嵌套??Package Merge包的合并??Package Import包的导入??.为模型中创建的“Class”对象使用别名首先在工具箱中点选,然后在合适的位置左键单击确定,之后弹出属性窗口(如图7所示)图-7:新建类截图在“Name”栏中输入Class 的名称“Test”,然后在“Alias”中输入一个别名“测试”。
第二章第3节:程序设计基本知识1.数据类型类型说明及实例数据类型类型标识符整型int 如:1、-99、89456等浮点型float 可以使用浮点数表示小数,如:3.1415、0.00882.318E+6(表示2.318*106)字符串型str 通常是用单引号(‘’)或双引号(“”)括起来的一串字符,如:‘中国’、“China”布尔型bool 布尔类型通常用于逻辑判断,只有两个值:True和False,分别代表真和假列表list 列表是用来存放一组数据的序列。
列表中存放的元素可以是各种类型的数据,它们被放置在一对中括号“[]”中,以逗号分隔,如:[1,2,3,‘A’,5]数据类型转换函数功能说明Float(x)将x转换为一个浮点数数据Int(x) 将x转换为一个整数数据Str(x) 将x转换为一个字符串数据(1)、常量指程序运行过程中,其值不能改变的量,例如1024、“red”(2)、变量指程序运行过程中,其值可以改变的量。
变量是内存中存放数据的存放数据存储单元,用变量名来表示。
变量命名需要遵循以下规则:a、开头只能是字母、汉字、下划线;b、由字母、汉字、数字、下划线组成c、不能用保留字。
另外,变量名最好能“见名知意”。
如:常用的系统关键字有for、in、if、continue、break、else、and、not和or等。
(3)变量名=表达式;如:colors=[“red”,“yellow”,“green”] 注意的是,Python语言中的变量必须在使用前被赋值,不能使用未被赋值的变量。
在使用过程中,变量还能够被重新赋值。
4.Python 语言中的变量可以被赋值为列表类型的值,如colors = ["red","yellow","green"]。
若要访问列表中某个元素的值,可用变量名加索引colors[0]colors[1]colors[2]"yellow""green""red"的值为"red", colors [1] 的值为"yellow", colors[2]的值为"gren"。
数据类型数值类型分为整数型和实数型两大类。
1、整数型整数型是指不带小数点和指数符号的数。
按表示范围整数型分为:整型、长整型(1)整型(Integer,类型符%)整型数在内存中占两个字节(16位)十进制整型数的取值范围:-32768 ~ +32767例如:15,-345,654%都是整数型。
而45678%则会发生溢出错误。
(2)长整型(Long,类型符&)长整数型在内存中占4个字节(32位)。
十进制长整型数的取值范围:-2147483648 ~ +2147483647例如:123456,45678&都是长整数型。
2、实数型(浮点数或实型数)实数型数据是指带有小数部分的数。
注意:数12和数12.0对计算机来说是不同的,前者是整数(占2个字节),后者是浮点数(占4个字节)实数型数据分为浮点数和定点数。
浮点数由三部分组成:符号,指数和尾数。
在VB中浮点数分为两种:单精度浮点数(Single )双精度浮点数(Double )(1)单精度数(Single,类型符!)在内存中占4个字节(32位),,有效数字:7位十进制数取值范围:负数-3.402823E+38 ~ -1.401298E-45正数1.401298E-45 ~ 3.402823E+38在计算机程序里面不能有上标下标的写法,所以乘幂采用的是一种称为科学计数法的表达方法这里用E或者e表示10的次方(E/e大小写都可以)比如:1.401298E-45表示1.401298的10的负45次方vb里面可以这样表示:8.96E-5例:21e5(正号省略)表示:21乘以10的5次方的一个单精度数(2)双精度数(Double,类型符#)Double类型数据在内存中占用8个字节(64位)Double型可以精确到15或16位十进制数,即15或16位有效数字。
取值范围:负数:–1.797693134862316D+308 ~ -4.94065D-324正数:4.94065D-324 ~ 1.797693134862316D+308比如17.88D5,表示它是一个双精度数,表示17.88乘以10的5次方这里用D来表示10的次方二、货币型(Currency,类型符@)主要用来表示货币值,在内存中占8个字节(64位);整数部分为15位,可以精确到小数点后4位,第五位四舍五入;属于定点实数货币型数据的取值范围:-922337203685447. 5808 ~ 922337203685447. 5807跟浮点数的区别:小数点后的位数是固定的,4位例如:3.56@ 、65.123456@都是货币型。
CGAL学习:数据类型CGAL 4.13 - Number Types1 Introduction(介绍:略)涉及到的数⼤致有3种:⼀是整数,⼆是有理数,三是浮点数。
有理数可以⽤2个整数表⽰。
精度上可分为任意精度和固定精度,固定精度可能会出现舍⼊。
还有⼀种⽤于表⽰区间的数据,可⽤于求解多项式,要求其精度不断提⾼,从⽽找到解的位置。
2 Built-in Number Types(内置类型)The built-in number types float, double and long double have the required arithmetic and comparison operators. They lack some required routines though which are automatically included by CGAL.内置数据类型包括float,double和long double有所需的算术和⽐较运算符。
All built-in number types of C++ can represent a discrete (bounded) subset of the rational numbers only. We assume that the floating-point arithmetic of your machine follows Ieee floating-point standard. Since the floating-point culture has much more infrastructural support (hardware, language definition and compiler) than exact computation, it is very efficient. Like with all number types with finite precision representation which are used as approximations to the infinite ranges of integers or real numbers, the built-in number types are inherently potentially inexact. Be aware of this if you decide to use the efficient built-in number types: you have to cope with numerical problems. For example, you can compute the intersection point of two lines and then check whether this point lies on the two lines. With floating point arithmetic, roundoff errors may cause the answer of the check to be false. With the built-in integer types overflow might occur.假定内置数据类型符合IEEE浮点标准,它运⾏⼗分⾼效,但不精确。
简述8种基本数据类型及其对应的包装类在Java中,有8种基本数据类型,它们分别是:byte、short、int、long、float、double、char和boolean。
这些基本数据类型都有对应的包装类,用于在需要使用对象的场合下进行操作。
1. byte和Bytebyte是一种8位有符号整数类型,取值范围为-128到127。
Byte 是byte的包装类,提供了一些方法来操作byte类型的数据。
2. short和Shortshort是一种16位有符号整数类型,取值范围为-32768到32767。
Short是short的包装类,提供了一些方法来操作short类型的数据。
3. int和Integerint是一种32位有符号整数类型,取值范围为-2147483648到2147483647。
Integer是int的包装类,提供了一些方法来操作int类型的数据。
4. long和Longlong是一种64位有符号整数类型,取值范围为-9223372036854775808到9223372036854775807。
Long是long的包装类,提供了一些方法来操作long类型的数据。
5. float和Floatfloat是一种32位单精度浮点数类型,取值范围为1.4E-45到3.4028235E38。
Float是float的包装类,提供了一些方法来操作float类型的数据。
6. double和Doubledouble是一种64位双精度浮点数类型,取值范围为4.9E-324到1.7976931348623157E308。
Double是double的包装类,提供了一些方法来操作double类型的数据。
7. char和Characterchar是一种16位无符号Unicode字符类型,取值范围为'\u0000'到'\uffff'。
Character是char的包装类,提供了一些方法来操作char类型的数据。
EA编程教程第一讲-MQL语法什么是MQL?MetaQuotes Language 4 (MQL4)语言是MT4软件为了编写出执行交易策略的内置编程语言。
我们可以通过编写EA(Expert Advisors)来控制MT4客户端按照我们的预先定义好的交易策略来执行外汇交易。
另外,我们可以使用mql来编写技术分析指标,脚本和库。
1)MQL的语法MQL的语法与我们平时见到的C语言语法极其类似,但仍然有以下不一致的地方:一:没有地址运算符。
二:没有do while操作语句三:没有goto语句。
四:没有?::语句。
五:没有结构体。
六:不支持复杂的赋值语句,比如 val1=val2=0; arr[i++]=val; cond=(cnt=OrdersTotal)>0;这种复杂语句不被支持。
2)注释多行注释从/*开始并以*/结束。
注释符不能嵌套,只能头尾各一个。
单行注释符为//,仅注释一行。
我们写程序的时候要养成注释的习惯,可以让程序更好理解,同时MQL编译器自动忽略掉注释的内容。
注释的内容只给我们人看,不是给机器看的。
比如:// 这个是单行注释/* 这个是多行注释int i = 0;注释里面爱写什么都行*/3)标识符标识符是程序里面变量,函数,数据类型的名称,长度不能超过31个字符,标识符可以由数字,大小写字母a到z和A到Z,下划线(_),其中第一个符号不能是数字,并且标识符不能与保留字一样。
什么是保留字请看下文。
4)保留字保留字是MQL语言定义好的单词,每个单词都有这特殊的意义。
保留字如下:数据类型:bool,color,datetime,double,int,string,void存储类型: extern,static操作符:break,case,continue,default,else,for,if,return,switch,while其他:false,true课程简介:什么是MQL?MetaQuotes Language 4 (MQL4)语言是MT4软件为了编写出执行交易策略的内置编程语言。
我们可以通过编写EA(Expert Advisors)来控制MT4客户端按照我们的预先定义好的交易策略来执行外汇交易。
另外,我们可以使用mq本课程知识点:MT4:MT4是一个被广泛使用的外汇交易平台,内含4大类29种常用技术指标。
我认为我们只需要了解这些指标就足够了,如果你精力过剩,也可以研究网上近千种技术指标。
成交量类指标对外汇市场特点影响,判断趋势的效率不高。
EA:EA就是Expert Adviser的缩写,也就是我们俗称的智能交易,我们可以利用MQL语言来编写EA来实现机器自动交易的目的,它是外汇市场是唯一一个可以进行24小时交易的市场,以我们的作息时间来看我们无法做到24小时连续的交易,因此我们错过了很多好的进场机会。
技术分析:所谓技术分析,泛指利用某些历史资料来判断整个汇市或个别外汇币种价格未来变动的方向和程度的各种分析方法。
汇市的基础因素分析和技术分析既相互联系,又相互独立,共同构成对外汇投资的完整的分析。
EA编程教程第二讲-数据类型所有的程序就是对数据进行操作,我们根据不同的需求对数据定义不同的类型,比如数字类型的数据用于操作数组。
价格数据使用浮点型类型数据,MQL本身没有货币类型的数据类型。
不同的数据类型有着不同的处理速度,其中整形处理的最快,double类型的需要特殊处理,所以比整形要慢,string也就是字符串类型处理起来最慢,因为处理字符串需要动态的分配和释放内存,对内存的操作比较频繁。
以下是常用的数据类型1)int,整型,它就是我们常见的整数,入1,-100,908等等。
它的范围为-2147483648 to 2147483647,如果超出这个范围,则会程序会提示异常。
2)bool,布尔型。
它的值只有两个,true或false。
Bool型其实就是个int类型,不过它的值被限定为1:true和0:false。
例如:bool a = true;bool b = 0; //b的值为false3)char, 字符型:它的内部也是int型,范围为0到255。
如果超过这个范围,则程序会提示异常。
我们不直接使用char,而是使用int,如:int a = 'a';int b = 'c';4)string 字符型,字符型可以保存字符串如:string a = "这是一个字符串";5)double 浮点型,用于保存含有小数的数字如:double a = "1.23";double b = "-90.98";6)color 颜色类型,颜色类型的内部实现,其实也是一个int型。
7)datetime 时间类型,时间类型的内部其实也是个int型,它的实际值为1970-1-1到指定时间的秒数。
时间类型的赋值如:datetime d = D'2010.1.1 12:3:4'datetime c = D'2010.2.3 3:56';课程简介:所有的程序就是对数据进行操作,我们根据不同的需求对数据定义不同的类型,比如数字类型的数据用于操作数组。
价格数据使用浮点型类型数据,MQL本身没有货币类型的数据类型。
本课程知识点:MT4:MT4是一个被广泛使用的外汇交易平台,内含4大类29种常用技术指标。
我认为我们只需要了解这些指标就足够了,如果你精力过剩,也可以研究网上近千种技术指标。
成交量类指标对外汇市场特点影响,判断趋势的效率不高。
EA:EA就是Expert Adviser的缩写,也就是我们俗称的智能交易,我们可以利用MQL语言来编写EA来实现机器自动交易的目的,它是外汇市场是唯一一个可以进行24小时交易的市场,以我们的作息时间来看我们无法做到24小时连续的交易,因此我们错过了很多好的进场机会。
技术分析:所谓技术分析,泛指利用某些历史资料来判断整个汇市或个别外汇币种价格未来变动的方向和程度的各种分析方法。
汇市的基础因素分析和技术分析既相互联系,又相互独立,共同构成对外汇投资的完整的分析EA编程教程第三讲-数据类型转换MQL语言目前仅支持隐式转换,MQL目前可以做一下数据类型自动转换。
int(bool, color, datetime) 可转换成 double 或 stringdouble 可转换成 string,除了以上两种转换外,不能进行其他的数据类型转换,如:int i = 1 / 2; //不进行数据转换,注意结果为0,而不是0.5,因为分子和分母都是整形,就不进行转换。
int i = 1 / 2.0; //表达式已经转换成double类型了,算出来的结果为0.5,但是由于变量i定义为int型,所以取整部分0,最终结果还是整数0。
课程简介:MT4是一个被广泛使用的外汇交易平台,内含4大类29种常用技术指标。
我认为我们只需要了解这些指标就足够了,如果你精力过剩,也可以研究网上近千种技术指标。
成交量类指标对外汇市场特点影响,判断趋势的效率不高。
EA:EA就是Expert Adviser的缩写,也就是我们俗称的智能交易,我们可以利用MQL语言来编写EA来实现机器自动交易的目的,它是外汇市场是唯一一个可以进行24小时交易的市场,以我们的作息时间来看我们无法做到24小时连续的交易...本课程知识点:MT4:MT4是一个被广泛使用的外汇交易平台,内含4大类29种常用技术指标。
我认为我们只需要了解这些指标就足够了,如果你精力过剩,也可以研究网上近千种技术指标。
成交量类指标对外汇市场特点影响,判断趋势的效率不高。
EA:EA就是Expert Adviser的缩写,也就是我们俗称的智能交易,我们可以利用MQL语言来编写EA来实现机器自动交易的目的,它是外汇市场是唯一一个可以进行24小时交易的市场,以我们的作息时间来看我们无法做到24小时连续的交易,因此我们错过了很多好的进场机会。
技术分析:所谓技术分析,泛指利用某些历史资料来判断整个汇市或个别外汇币种价格未来变动的方向和程度的各种分析方法。
汇市的基础因素分析和技术分析既相互联系,又相互独立,共同构成对外汇投资的完整的分析。
EA编程中【point的解读】什么是Point?Point是什么?为什么叫Point?为什么要乘以Point?为什么又除以Point?Point的英文解释是“点”MT4系统内定这个Point字代表一个变化的“点”比如:欧元的计算1.9356 / Point = 19356又比如:日元的计算132.66 / Point = 13266注意:Point是会自动变化的好处是当你编写程式的时候不会因为欧元对美元欧元对日元就会出错那么Point有什么用呢?再比如:High的值减Low的值或者关盘减开盘if(Close[0]-Open[0]/Point > 10){buyme();}他的值可能是1.3100-1.3270=-170-170 是没有大过 10因为是下降,所以没有成交交易再比如:macd1_0的值减macd1_1的值再比如:ma1now的值减ma2now的值总之是计算“点”用的Point 没有固定的值碰到 GU 可能是 0.0001碰到 EJ 可能是 0.001使用的目的就是要把他们变成“整数”你可以了解为除 /Point与乘 *point/Point小數點往後移小數變成整數*Point小數點往前移整數變成小數例子:EU小數點有4位EU / Point小數點往后移4位小數變成整數JY小數點有2位JY / Point小數點往后移2位也是小數点變成整數JY 的 high[0]-low[0]=小數点 /Point =整數EU 的 high[0]-low[0]=小數点 /Point =整數例子:JY 的 if( high[0]-low[0] > 10 *Point){buyme()}; JY 的高盘减低盘大过10点就买上EU 的 if (high[0]-low[0]> 10 *Point ){buyme()}; EU 的高盘减低盘大过10点就买上这两个答案一样if (high[0]-low[0]> 10 *Point ){buyme()};if ( (high[0]-low[0]) / Point > 10){buyme()}; 注意:Point 的 P 是大写的Ask 的 A 也是大写的Bid 的 B 要大写颜色Red 的 R 也是大写的如何解读EA告诉我以下怎样解读if(s+b==0&& ma1now>ma2now&& (ma1now-ma2now)/point>10&& macd1now>0&& macd2now/point>10&& close[0]>open[0]&& high[0]-low[0]/point>10 && close[0]-open[0]/point>10 ){buyme();}解读:如果(买卖等于零加上均线1大过均线2加上均线1减均线2大过10点加上 macd1超过零加上 macd2超过10点加上收盘大过开盘加上高减低大过10点加上收盘减开盘大过10点){这样才买上成交}认识Close[0]和Open[0]一个K线的开始叫Open[0]一个K线的结束叫Close[0]上一个的K线的开始叫Open[1] 上一个K线的结束叫Close[1]上上一个的K线的开始叫Open[2]上上一个K线的结束叫Close[2]所以要判断几时的K线就什么号码比如:Open[0] Open[1] Open[2] Open[3] Open[4]比如:Close[0] Close[1] Close[2] Close[3] Close[4] Close[0]>Open[0] 表示上升Close[0<Open[0] 表示下降如果你这样编写if(Close[0]>Open[0]&& Close[1]>Open[1]&& Close[2]>Open[2]&& Close[3]>Open[3]){buyme();}表示后方有3次上升然后这一次也是上升判断就下注上升也就是买上Buy反过来就卖下Sell认识High[0]和Low[0]一个K线的高点叫High[0]一个K线的低点叫Low[0]上一个的K线的高点叫High[1]上一个K线的低点叫Low[1]上上一个的K线的高点叫High[2]上上一个K线的低点叫Low[2]所以要判断几时K线的高低点就什么号码比如:High[0] High[1] High[2] High[3] High[4]比如:Low[0] Low[1] Low[2] Low[3] Low[4]High[0]-Low[0] 表示我们可以得到他们的差点High[1]-Low[1] 表示我们可以得到上一回的差点如果你这样编写if(Close[0]>Open[0]&& Close[1]>Open[1]&& (High[1]-Low[1])/Point>10&& (High[0]-Low[0])/Point>10){buyme();}表示后方有上升超过10点然后这一次是上升超过10点判断就下注上升也就是买上Buy反过来就卖下Sellif(Close[0]<Open[0]&& Close[1]<Open[1]&& (High[1]-Low[1])/Point>10&& (High[0]-Low[0])/Point>10){sellme();}iCustom()函数在外汇EA中的应用在mt中编写指标或EA时,iCustom()是一个非常有用的函数,它的功能是调用客户自己编写的的指标,并输出相应的指标值。