初学者的问题 MQL4 MT4 MetaTrader 4 - 页 28

 
Vladimir Karputov:

推迟了。

Gevorg Hakobyan, 2016.12.08 15:26

你好。怎样才能获得Meta Trader 4中所有现有货币对的列表?以及如何注意到名单中的任何变化?
https://docs.mql4.com/ru/marketinformation/symbolstotal
SymbolsTotal - Получение рыночной информации - Справочник MQL4
SymbolsTotal - Получение рыночной информации - Справочник MQL4
  • docs.mql4.com
SymbolsTotal - Получение рыночной информации - Справочник MQL4
 
Sergey Gritsay:

符号总数

返回可用的(在MarketWatch中选择的或全部)符号的数量。

intSymbolsTotal(
bool selected// true - 只有MarketWatch中的符号
);

参数

选定的

[in] 请求模式。可以取值为true或false。

返回的值

如果选择为真,则返回MarketWatch中选择的字符数。如果是假的,它返回所有符号的总数。

谢谢你,谢尔盖。但我不需要一个数量,而是需要一个所有现有数量的列表,以处理和计算货币在市场上的强度。
 
谢谢你,雷纳特。但我不需要一个数量,而是需要一个所有现有数量的列表,以处理和计算货币在市场上的强度。

 
在同一经纪商的模拟账户真实账户 中,该列表中的货币对数量不同。我写了一个指标,在所有货币对中计算所选货币的数据。由于该指标应该在所有账户上工作,你应该事先考虑到这些货币对的可用性。
 
Gevorg Hakobyan:
谢谢你,雷纳特。但我不需要一个数量,而是需要一个所有现有的列表,来处理和计算货币在市场上的强度。

那里有许多功能,看看你在那部分需要什么

https://docs.mql4.com/ru/marketinformation/symbolname

SymbolName - Получение рыночной информации - Справочник MQL4
SymbolName - Получение рыночной информации - Справочник MQL4
  • docs.mql4.com
SymbolName - Получение рыночной информации - Справочник MQL4
 
Gevorg Hakobyan:
谢谢你,雷纳特。但我不需要一个数量,而是需要一个所有现有数量的列表,以处理和计算货币在市场上的强度。

首先,我们得到所有符号的列表。

//+------------------------------------------------------------------+
//|                                                   AllSymbols.mq5 |
//|                              Copyright © 2016, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   int count=SymbolsTotal(false); // false - all symbols in MarketWatch
   for(int i=0;i<count;i++)
      Print(i,": ",SymbolName(i,false));
  }
//+------------------------------------------------------------------+

这里我们使用MarketWatch中的所有符号的枚举法。

但仅仅是一份名单并不能给我们带来什么。为了获得一个符号的属性,我们必须首先选择它(SymbolSelect)。

附加的文件:
 
Vladimir Karputov:

首先,我们得到一个所有符号的列表。

这使用了针对MarketWatch中所有可用符号的搜索。

但仅仅是一份清单并不能给你带来什么。为了获得一个符号的属性,你必须首先选择它(SymbolSelect)。

这里有一个误区:int count=SymbolsTotal(false);// false - MarketWatch中的所有符号- //如果false,那么返回所有符号的总数
该清单将给出当事人要求的内容,即所有符号的信息。然后依次选择和处理每一个人。
 
谢谢大家。我想我已经找到了一个解决方案。我将尝试首先将我的名单与MarketWatch的名单进行比较。如果有新的配对,我将把它们添加到我的列表中,如果没有配对,我将直接删除不必要的配对。只是现在有一个新的问题--结果将是模糊的,并取决于MarketWatch。
 

大家好!请您告知如何在EA中设置订单删除?

情况是这样的。

我们在不同的方向放置2个挂单,只要其中一个触发,另一个就会被删除,不再展示。

如果有任何帮助,我将非常感激。

我将非常感激。

 
yaaarik777:

大家好!请您告知如何在EA中设置订单删除?

情况是这样的。

我们在不同的方向放置2个挂单,只要其中一个触发,另一个就会被删除,不再暴露。

如果有任何帮助,我将非常感激。

谢谢你。

如果挂单的数量少于2个,就删除剩下的那个。

如果我们不想退回挂单,那就比较困难,我们必须分析下单的时间和条件。