路路发智能交易研发中心

 找回密码
 立即注册
查看: 1899|回复: 0

TB编程教程 条件语句If-Else-If

[复制链接]

管理员

MT4软件工程师

Rank: 9Rank: 9Rank: 9

积分
6521
帖子
2771
主题
2761
QQ
发表于 2015-5-9 16:56:10 | 显示全部楼层 |阅读模式
TB编程教程 条件语句If-Else-If
If-Else-If是在If-Else的基础上进行扩展,支持条件的多重分支。
语法如下:
  1. If (Condition1)
  2. {
  3.     TradeBlazer公式语句1;
  4. }Else If(Condition2)
  5. {
  6.     TradeBlazer公式语句2;
  7. }Else
  8. {
  9.     TradeBlazer公式语句3;
  10. }
复制代码


Condition1是一个逻辑表达式,当Condition1为True的时候,TradeBlazer公式语句1将会被执行,Condition1为False时,将会继续判断Condition2的值,当Condition2为True时,TradeBlazer公式语句2将会被执行。Condition2为False时,TradeBlazer公式语句3将会被执行。Condition1,Condition2可以是多个条件表达式的逻辑组合,条件表达式必须用()括起来。
TradeBlazer公式语句是一些语句的组合,如果TradeBlazer公式语句是单条,您可以省略{},二条或者二条以上的语句必须使用{}。
If-Else-If的语句可以根据需要一直扩展,在最后的Else之后再加If(Condition)和新的执行代码即可。当然您也可以省略最后的Else分支,语法如下:
  1. If (Condition1)
  2. {
  3.     TradeBlazer公式语句1;
  4. }Else If(Condition2)
  5. {
  6.     TradeBlazer公式语句2;
  7. }
复制代码



If-Else的嵌套If-Else的嵌套是在If-Else的执行语句中包含新的条件语句,即一个条件被包含在另一个条件中。
语法如下:
  1. If (Condition1)
  2. {
  3.     If (Condition2)
  4.     {
  5.         TradeBlazer公式语句1;
  6.     }Else
  7.     {
  8.         TradeBlazer公式语句2;
  9.     }
  10. }Else
  11. {
  12.     If (Condition3)
  13.     {
  14.         TradeBlazer公式语句3;
  15.     }Else
  16.     {
  17.         TradeBlazer公式语句4;
  18.     }
  19. }
复制代码

Condition1是一个逻辑表达式,当Condition1为True的时候,将会继续判断Condition2的值,当Condition2为True时,TradeBlazer公式语句1将会被执行。Condition2为False时,TradeBlazer公式语句2将会被执行。当Condition1为False的时候,将会继续判断Condition3的值,当Condition3为True时,TradeBlazer公式语句3将会被执行。Condition3为False时,TradeBlazer公式语句4将会被执行。Condition1,Condition2,Condition3可以是多个条件表达式的逻辑组合,条件表达式必须用()括起来。
TradeBlazer公式语句是一些语句的组合,如果TradeBlazer公式语句是单条,您可以省略{},二条或者二条以上的语句必须使用{}。
例如,在一个公式应用中,条件设置如下:当前行情上涨的时候,如果收盘价高于开盘价时,则产生一个以收盘价买入1张合约;否则产生一个以开盘价买入1张合约。当前行情没有上涨的时候,如果收盘价高于开盘价,则产生一个以收盘价卖出1张合约;否则产生一个以开盘价卖出1张合约。脚本如下:
  1. If (Open > High[1])
  2. {
  3.     If (Close>Open)
  4.     {
  5.         Buy(1,Close);
  6.     }Else
  7.     {
  8.         Buy(1,Open);
  9.     }
  10. }Else
  11. {
  12.     If (Close>Open)
  13.     {   
  14.         Sell(1,Close);
  15.     }Else
  16.     {
  17.         Sell(1,Open);
  18.     }
  19. }
复制代码




外汇智能交易,成就财富梦想!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


MT4编程培训|EA定制开发|QQ在线咨询|路路发智能交易研发中心

GMT+8, 2025-1-5 07:28 , Processed in 0.175949 second(s), 26 queries .

© 2009-2022 520EA.com EA668.com

快速回复 返回顶部 返回列表