[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 512

 
LazarevDenis:
能否请教一下,是否有可能将mql4中的一些文本写入文件,例如*.txt,然后检索这些数据进行交易。 我们的想法是,EA将学会自己进行交易,当价格每两根柱子变化>100*Point时,EA将记住这些值,然后尝试使用它们(指标值+/-n%,开出一个订单)。 这也可以在EA中实现,但关闭MetaTrader后所有变量值似乎都被重置为零
可以使用全局变量
 
谁能测试一下我的EA,告诉我它的优势和劣势?
附加的文件:
 

帮助我写一个函数,如果最后10个头寸以负数被关闭,它将执行某个动作。

预先感谢
 
Kreol:
是的,是的,我得到了你......。但在我放弃我辛苦赚来的钱之前,我想确定我需要的脚本在公共领域中是不可用的
数据库中的脚本就像狗咬狗一样大。你问的是错误的问题。通用脚本,即使他们为你制作,也会不方便,你会把它扔掉。
脚本通常被设计用来执行一个简单的统一动作。最好是使用一组脚本,每个脚本都与不同的热键绑定。
比如说。

脚本
钥匙
打开购买脚本Ctrl+B
打开Sell的脚本Ctrl+S
反转剧本Ctrl+R
关闭脚本
Ctrl+C

以此类推。
你可以通过搜索在数据库中找到相应的现成的脚本,谷歌请求,如反向脚本site:mql4.com

 
nuan:

帮助我写一个函数,如果,例如,最后10个头寸以负数被关闭,将执行某个动作。

预先感谢

要计算出在循环中亏损关闭的最后一笔订单的数量并不困难。但是,我们怎样才能写出能执行不明确动作的代码呢?
 
需要一个可以计算的代码
 
你好!这里有一个问题...是大量的输入条件和辅助函数,以及外部变量(如extern double),会拖慢Expert Advisor的速度吗? 这只是测试器中的一个谜...第一个把所有东西都隐藏在代码中的机器人比所有东西都是extern double的机器人有更多的缩水......尽管两者的变量参数相同。(它们也是一样的)
 
Shniperson:
你好!这里有一个问题...是不是因为大量的输入条件和辅助函数,以及外部变量如extern double,使得EA可能变得迟钝? 这只是测试器中的一个谜...第一个把所有东西都隐藏在代码中的机器人比所有东西都是extern double的机器人有更多的缩水......尽管两者的变量参数相同。(它们也是一样的)。


再次检查变量的值--也许它们是不同的,在编译第一个变量时,它们的工作方式会有所不同。

除此之外,将它们与搜索中的这个程序进行比较 - 下载 - WinMergeU.exe。

 

我从https://www.mql5.com/ru/code/9274 下载

我从这里下载了一个脚本,可以自动设置预设的取值和损失,但它们开始跟随价格浮动,你能告诉我问题出在哪里,如何设置才能让它们静止?

 
nuan:
我们需要一个代码来计算


这并不困难。写一个子程序。

// этот код будет работать корректно только если в истории отсутствуют отложенные ордера.
int SchLossOrders(){
  string SMB=Symbol();
  int Sch=0;
  int i;
  for (i=OrdersHistoryTotal()-1;i>=0;i--){
    if (!OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) { Print("Ошибка ",GetLastError()," при выборе ордера");}
    else {
      if(OrderProfit()<0 && (OrderType()==OP_BUY || OrderType()==OP_SELL)){
        Sch++;
      }
      else{
        return(Sch);
      }
    }
  }
 return(Sch);     
}

在EA的开头,我们写道。

if(SchLossOrders()>=10){
  // 10 последних сделок были убыточными - выполняем какое-то действие
}