错误、漏洞、问题 - 页 611

 
x100intraday:

我不敢想象如何。实际上,我需要一个灵活的变体,我不需要一个字符串的不变形式,而是需要几个不同的字符串来形成,在一个循环中...如果可能的话,我希望看到一个更具体的例子......

...

你也可以将#define 中更复杂的条件组成一行。

#define LOG(text,logs,html,type,spc,style)  if(type){if(logs){okLOG(text,spc);}if(html){okHTML(text,spc,style);}}  if(!type){if(logs){erLOG(text,spc);}if(html){erHTML(text,spc,style);}}

我不知道如何解决你的问题,我没有试过。我将不得不进行实验...))

也许你可以像这样形成几个#define,然后在一个循环中选择你可能需要的东西。

从字符串到枚举,你可以事先准备好带有开关 的函数。但你可能有非常多的选择,显然,这种方法也行不通......

哦,这里有另一个选择!你可以生成一个mqh 文件,它与主文件预先连接在一起。就是说,应该有一个函数接受一个字符串,然后生成一个mqh 文件。该文件将一直被覆盖。这正是它的工作方式。)

 

tol64#define 选项让我出了一身冷汗......。我并不质疑我可能可以在我需要的地方工作,但这是在使用非标准方式进行编程的奥林匹克竞赛中的某个地方--如果只是为了达到结果而不惜任何代价。我拒绝了switch 方法,原因和我上面描述的一样:我不想为一个意识形态上的基本任务增加额外的大块代码。在我看来,应该有一个相当简单的标准方法......否则,我开始觉得自己像个黑客,试图以复杂的方式入侵系统并获得所需的结果......。

有一个至关重要的问题:是否有可能以及如何逐一访问相同时间段的标准列表、时间段上的对象可见性 列表等?到目前为止,我不得不通过暴力手段手动填充数组,然后通过索引从那里检索我需要的东西。

ENUM_TIMEFRAMES TFsArr[3]={PERIOD_M15, PERIOD_M20, PERIOD_M30);
还要多久!?也许你可以一次把这些元素从预定义的数组/列表中取出来?如果我没有足够的知识是一回事...但我还没有遇到过有人在访问别人的代码中的预定义资源时,没有先在垫子上塞满羽毛的拷贝......
 
x100intraday:
我怎样才能事先准备一个带有逻辑(?)枚举的字符串,如:OBJ_PERIOD_M10| OBJ_PERIOD_H4,然后在ObjectSetInteger()中以胶合字符串的形式替代准备好的变量?我试着用符号把它粘在一起,然后用StringToInteger() 把它包起来,但没有成功......。因为OBJ_PERIOD_...- 是一个枚举 类型的元素,但其标志是int 类型的hex-equivalent?那么这个枚举看起来更像是一个位数 OR的操作...
你可以把它们加起来,类似这样的事情。
ObjectSetInteger(0,highlevel,OBJPROP_TIMEFRAMES,(int)OBJ_PERIOD_M10+(int)OBJ_PERIOD_H4);

...也就是说,通过向int变量添加所需的枚举。

 

不切实际的大利差。

在AlpariFS服务器上GBPUSD 648, USDCHF 110

MQ-Demo服务器上英镑兑美元168,美元兑瑞郎185

其他符号都在规范之内。

这是稀薄市场的 特殊性还是MetaTrader 5的错误

英镑现在似乎已经平静下来了,但加拿大和澳元的价差分别为88和61。瑞士仍然停留在185点的价差上。

void OnStart()
  {
   while(!IsStopped()){Comment(SymbolInfoInteger(_Symbol,SYMBOL_SPREAD));Sleep(100);}
   Comment("");
  }
 
Swan:
你可以把它们加起来,这就是它的作用。

即通过将所需的枚举添加到int变量中。

你从哪里获取枚举?它们作为预定义(保留)的词/值被嵌入语言中。我不想有自己的重复枚举数组。
 
x100intraday:

我怎样才能在一个字符串前加上逻辑(?)枚举,如:OBJ_PERIOD_M10| OBJ_PERIOD_H4

那么这个枚举看起来更像是一个 OR的位操作...

它看起来并不像,它就是它。

你从哪里获取枚举?它们是以预定义(保留)词/值的形式嵌入语言中的。

当然是来自枚举,在帮助中查看。

我不想创建自己的重复枚举数组。

你至少要有一些东西...枚举、数组、定义。

否则,你将不会有任何进展

 
sergeev:

它看起来并不像,它就是它。

当然是来自枚举,请在帮助中查看。

你必须做一些事情。 枚举、数组、定义。

你不会比这更进一步了。

如果你想启动它,那很好,它已经完成了。但是,为什么我们不能以预定义的名称和常量的形式访问嵌入在语言中的列表项库?开发者在某处藏匿了所有这些枚举...
 
x100intraday:
你从哪里获取枚举?它们作为预定义(保留)的词/值被嵌入语言中。我不想创建自己的重复枚举数组。

不明白的问题)

ENUMs=整数,没有预定义的数组/列表。

 
Swan:

不明白的问题)

ENUM_es = 整数,没有预定义的数组/列表。

ENUM_y = 是一个枚举。一个预定义的列表。
 
x100intraday:
但是,为什么我们不能访问以预定义名称和常量形式嵌入语言中的列表项库呢?开发者把所有这些枚举放在哪里...

什么?"你使用相同的ENUM_TIMEFRAMES,这对你来说是什么?