# 常量和变量?
如果你是程序员,你会知道代码中的常量和变量是什么意思。在 Builder 中,这些词的含义稍有不同:
变量 - 对于 fxDreema 项目来说,这些是全局变量,可以从所有模块访问。在输出代码中,它们并不完全是全局变量。
常量 - 类似于变量,但其理念是不应被修改。这些也是机器人输入参数。在输出代码中,它们并不是真正的常量。
终端变量 - 另一种变量。这些是终端(MetaTrader)的全局变量,在那里实际上称为全局变量 。它们用于在机器人之间传递信息,或存储几天的信息。
# 项目常量(输入属性)
在 fxDreema 中,您可以定义一个常量并在多个模块中使用。此外,该常量也是机器人的输入参数,您还可以将其用于优化。
点击常量(输入) 以创建新的常量或编辑已创建的常量。
一旦定义,常量可以重新排列。
然后,在任何模块中,您都可以选择一个常量来替换参数。只需右键点击您想替换的输入字段:

这里有一个示例,展示了常量如何被使用:
单个常量可以同时在多个模块中使用——常量是全局的。这就是为什么当更改常量的值(来自机器人的输入参数)时,会影响所有使用该常量的模块。
不要尝试修改项目中的常量。字面意思就是它应该保持不变。如果你想这样做,请使用变量。
# 项目变量
变量与常量类似,但略有不同。项目变量也是全局的,可以像常量一样使用,但它们的值可以被修改。因此,当你想使用一个可以在任何模块中修改的值时,请使用变量。
以下是定义变量的方法。点击变量以打开此窗口:
在这些模块中,您可以以多种方式读取和修改变量。请查看以下示例:
# 终端变量
在 MetaTrader 中,您有全局变量 ,而在 fxDreema 中,这些变量被称为终端变量 ,只是为了减少与其他类型变量的混淆。这些全局变量用于在机器人之间传递信息或作为持久内存,因为它们会存储在文件系统中,保存期限为 4 周。
您应仅使用这些变量来存储数值。字符串在这里不起作用。以下是官方文档中的更多信息:
您可以在终端变量中设置这些变量,并在条件 (或其他模块)中获取它们,如下图所示:
当然,当您进入 工具 -> 全局变量 时,您可以在 MetaTrader 中查看当前数值并进行修改:

