leonerd #: Здравствуйте. А как программно узнать символ и таймфрейм активного чарта в клиентском терминале? Т.е. чарта выбранного в настоящее время во вкладке. Есть какая-то функция из MQL5 для этого?
longChartGetInteger(
long chart_id, // идентификатор графикаint prop_id, // идентификатор свойстваint sub_window=0// номер подокна, если требуется
);
图表_带至顶部
在所有其他图表的顶部显示图表
bool
stringChartSymbol(
long chart_id=0// идентификатор графика
);
ENUM_TIMEFRAMESChartPeriod(
long chart_id=0// идентификатор графика
);
Примеры работы с графиком - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
leonerd #:
Здравствуйте. А как программно узнать символ и таймфрейм активного чарта в клиентском терминале? Т.е. чарта выбранного в настоящее время во вкладке. Есть какая-то функция из MQL5 для этого?
图表_带至顶部
在所有其他图表的顶部显示图表
bool
如何定义一个图表标识符也要显示?
图表_带至顶部
在所有其他图表的顶部显示图表
bool
如何定义一个图表ID也要显示?
https://www.mql5.com/ru/docs/constants/chartconstants/charts_samples#chart_foreground
谢谢你。CHART_FOREGROUND可能是最合适的。我不需要强行设置活动图表,我只需要确定哪一个是活动的。我认为我必须检查所有打开的图表,检查CHART_FOREGROUND,这样做对吗?
https://www.mql5.com/ru/docs/constants/chartconstants/charts_samples#chart_foreground
谢谢你。CHART_FOREGROUND可能是最合适的。我并不是要强行设置活动的图表,而只是要识别正在活动的那个。我的理解是否正确,我必须通过所有打开的图表检查CHART_FOREGROUND?
CHART_FOREGROUND 是一个在上面的图表。
而不是强制执行,你应该用ChartGetInteger代替ChartSetInteger。
下午好。
你能给我一个提示吗--我正在考虑一个机器人,有四个不同的条件--我还不知道要删除哪些条件:我想以后在为不同的时间段进行优化时找出答案。
即:四个条件(f1,f2,f3,f4)。可以有很多组合(0,0,1,1)或(1,0,1,0),以此类推--总共有16种组合。更确切地说,15--变体(0,0,0,0)不被考虑。
问题:如何创建程序逻辑,以便不在代码中描述所有15种组合。有一个函数用于检查这些条件中的每一个,以及在这些条件的哪些组合中适用--检查还能怎样。
如果你能给我看一些专家顾问,让我在简洁的代码中输入大量的条件,我将非常高兴。
下午好。
你能给我一个提示吗--我正在考虑一个机器人,有四个不同的条件--我还不知道要删除哪些条件:我想以后在为不同的时间段进行优化时找出答案。
即:四个条件(f1,f2,f3,f4)。可以有很多组合(0,0,1,1)或(1,0,1,0),以此类推--总共有16种组合。正好是15--变体(0,0,0,0)不被考虑。
问题:如何创建程序逻辑,以便不在代码中描述所有15种组合。有一个函数用于检查这些条件中的每一个,以及在这些条件的哪些组合中适用--检查还能怎样。
如果你给我看一些专家顾问,允许我在简明的代码中引入多个条件,我将很高兴。
我可能会这样去做。
或者类似这样的事情。
CHART_FOREGROUND 是上面的图表。
为了不强迫它,用ChartGetInteger代替ChartSetInteger
谢谢
你可以这样做。
或者类似这样的事情。
这里是第一个结构--在(0,1,0,1)的条件下,代码的行为会是什么?
你能否解释一下If条件的主体?
这里是第一个结构--在(0,1,0,1)条件下,代码的行为会是什么?
你能解释一下条件的主体吗?
这里非常简单。如果F1==false,那么( !F1 || f1)将为真,无论条件f1如何。
也就是说,如果Fn==true,条件fn被检查,如果Fn==false,条件fn不被检查。
因此,对于(0, 1, 0, 1),只有条件f2和f4将被检查,如果它们都成立,open_pos()代码将被执行。
这非常简单。如果F1==false,那么( !F1 || f1)将为真,无论条件f1如何。
也就是说,如果Fn==true,条件fn被检查,如果Fn==false,条件fn不被检查。
相应地,对于(0, 1, 0, 1),只有条件f2和f4将被检查,如果它们都成立,open_pos()代码将被执行。
但对于f1和其他不只是0或1的情况。我以为,如果满足条件f1的空头头寸,那么就会返回一个。如果是多头头寸,则返回2。如果条件完全没有得到满足--0。
但在这样的结构中,我们也许不应该指望这样的各种参数值,而应该以其他方式制定条件?
但对于f1和其他不只是0或1的情况。认为如果条件f1满足空头头寸,那么就会返回1。如果是多头,则返回2。如果条件完全没有得到满足--0。
但是,也许我们不应该指望这个构造中的参数值有这样的多样性,而应该以其他方式来制定条件,对吗?
分别考虑开多和开空的成套条件。
我的意思是,比如说,像这样。
我甚至可以出售我的一段真正的代码--如果没有关于变量的 "战斗 "值和持仓条件的信息,它不会显示出任何诀窍。
你实际上可以在这里指定224个选项中的一个。