使用自定义指标时的EA加速理论(功能-iCustom)。 - 页 7

 
Dennis Kirichenko:

不,有一个神奇的功能,可以将所有的尝试洗牌。

这种机制是内置于语言终端本身的。虽然这个想法很有趣...

可悲的是...我们会继续思考。

丹尼斯-基里琴科

你说结束了是什么意思?:-)

这意味着指标开始返回零而不是数字。

丹尼斯-基里琴科,卡尔普托夫-弗拉基米尔 - 谢谢你提供的有关功能的信息!

只是我不明白,TERMINAL_MEMORY_TOTAL和TERMINAL_MEMORY_AVAILABLE之间有什么区别?

TERMINAL_MEMORY_TOTAL是最大的可用内存,而TERMINAL_MEMORY_AVAILABLE是剩余内存,对吗?

 
-Aleks-:

只是不明白TERMINAL_MEMORY_TOTAL和TERMINAL_MEMORY_AVAILABLE之间的区别?

TERMINAL_MEMORY_TOTAL是最大的可用内存,而TERMINAL_MEMORY_AVAILABLE是剩余内存,对吗?

以下是自己检查的最好方法:打开终端;打开任务管理器;运行一个脚本,打印出TERMINAL_MEMORY_TOTAL、TERMINAL_MEMORY_AVAILABLE的值,并与任务管理器的读数进行比较。
 
第四,我们将增加一个更积极的自动删除此类指标副本的功能。
 
-Aleks-:
我手动试了一下,把有很多指标的模板改成几乎是空的--效果是有的(但缓存仍然存在--我想这不是关键)。但如何通过一个模板脚本进行打开和关闭 - 我不知道。我理解的疑点是,只要脚本在运行,内存就不会被清除......。安德烈,请帮忙做一下实验。

什么是不成功的?有什么帮助?尝试在哪里?代码在哪里?

ChartOpen来打开图表。然后在它的ChartApplyTemplate上写上预先设计的模板的名称(它将一直是相同的,没有必要写下来)。然后是ChartClose。

通过建议的功能来测量记忆。或者你可以下载我的免费iMemory指标,它是专门为此目的创建的。

 
Renat Fatkhullin:
在第四阶段,我们将增加一个更积极的自动删除此类指标副本的功能。

万岁!当掌权者听到你的声音时,多好啊!

而 "这样的指标拷贝 "是指前者在后者的内存不足 时造成的,还是其他原因?

 
Andrey Khatimlianskii:

什么是不成功的?有什么帮助?尝试在哪里?代码在哪里?

ChartOpen来打开图表。然后在它的ChartApplyTemplate上写上预先设计的模板的名称(它将一直是相同的,没有必要写下来)。然后是ChartClose。

通过建议的功能来测量记忆。或者你可以下载我的免费iMemory指标,它是专门为此目的创建的。

我是什么样的程序员?在这里我开始写脚本--打开图表的第一个命令没有得到任何结果。怎么了?

//+------------------------------------------------------------------+

//|                                                      Scripts.mq4 |

//|                      Copyright © 2008, MetaQuotes Software Corp. |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright "Copyright © 2008, MetaQuotes Software Corp."

#property link      "https://www.mql5.com"

#property version   "1.00"

#property strict

#property script_show_inputs

//--- input parameters

input int      Input1=0;

//+------------------------------------------------------------------+

//| Script program start function                                    |

//+------------------------------------------------------------------+



long  ChartOpen(string GBPUSD, ENUM_TIMEFRAMES  PERIOD_H1);

   

void OnStart()

  {

  }

//+------------------------------------------------------------------+

Автоматический трейдинг и тестирование торговых стратегий
Автоматический трейдинг и тестирование торговых стратегий
  • www.mql5.com
MQL5: язык торговых стратегий для MetaTrader 5, позволяет писать собственные торговые роботы, технические индикаторы, скрипты и библиотеки функций
 
-Aleks-:

我是什么样的程序员....开始写脚本了--打开图表的第一个命令没有给出结果。怎么了?

所以你的意思是 "为我做",而不是 "帮助我"?这就是你所说的。

并非如此--几乎所有的事情:ChartOpen函数 必须从OnStart函数的主体中调用。第一个参数--字符串,必须有引号。你不需要在调用时指定数据类型(字符串和ENUM_TIMEFRAMES)。

从搜索函数使用的例子或文档开始(那里也有例子)。

 
Andrey Khatimlianskii:

所以你的意思是 "为我做",而不是 "帮助我"?这就是你所说的。

并非如此--几乎所有的事情:ChartOpen函数 应该从OnStart函数的主体中调用。第一个参数--字符串,必须有引号。你不需要在调用时指定数据类型(字符串和ENUM_TIMEFRAMES)。

首先寻找使用该功能的例子或文档(那里也有例子)。

这就是问题所在,帮助中没有适当的例子。

根据你的意见,我已经重新做了。

 //+------------------------------------------------------------------+

//|                                                      Scripts.mq4 |

//|                      Copyright © 2008, MetaQuotes Software Corp. |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright "Copyright © 2008, MetaQuotes Software Corp."

#property link      "https://www.mql5.com"

#property version   "1.00"

#property strict

#property script_show_inputs

//--- input parameters

input int      Input1=0;

//+------------------------------------------------------------------+

//| Script program start function                                    |

//+------------------------------------------------------------------+



   

void OnStart()

  {

   long  ChartOpen("GBPUSD",   PERIOD_H1);

  }

//+------------------------------------------------------------------+


我在克隆时出现了错误,这是怎么回事?

'Scripts.mq4' Scripts.mq4 1 1

'ChartOpen' - 函数只能在全局范围内声明 Scripts.mq4 21 10

'GBPUSD' - 没有类型的声明 Scripts.mq4 21 20

'GBPUSD' - 预期的逗号 Scripts.mq4 21 20

'PERIOD_H1' - 没有类型的声明 Scripts.mq4 21 32

4个错误(s), 0个警告(s) 5 1

Автоматический трейдинг и тестирование торговых стратегий
Автоматический трейдинг и тестирование торговых стратегий
  • www.mql5.com
MQL5: язык торговых стратегий для MetaTrader 5, позволяет писать собственные торговые роботы, технические индикаторы, скрипты и библиотеки функций
 
-Aleks-:

这就是问题所在,帮助中没有适当的例子。

我根据你的意见重新做了。

 //+------------------------------------------------------------------+

//|                                                      Scripts.mq4 |

//|                      Copyright © 2008, MetaQuotes Software Corp. |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright "Copyright © 2008, MetaQuotes Software Corp."

#property link      "https://www.mql5.com"

#property version   "1.00"

#property strict

#property script_show_inputs

//--- input parameters

input int      Input1=0;

//+------------------------------------------------------------------+

//| Script program start function                                    |

//+------------------------------------------------------------------+



   

void OnStart()

  {

   long  ChartOpen("GBPUSD",   PERIOD_H1);

  }

//+------------------------------------------------------------------+


我在克隆时出现了错误,怎么了?

'Scripts.mq4' Scripts.mq4 1 1

'ChartOpen' - 函数只能在全局范围内声明 Scripts.mq4 21 10

'GBPUSD' - 没有类型的声明 Scripts.mq4 21 20

'GBPUSD' - 预期的逗号 Scripts.mq4 21 20

'PERIOD_H1' - 没有类型的声明 Scripts.mq4 21 32

4个错误(s), 0个警告(s) 5 1

解释什么是错的要花太长时间 :)

void OnStart()

  {

   ChartOpen("GBPUSD",   PERIOD_H1);

  }
 
-Aleks-:

这就是问题所在:帮助台中没有适当的例子。

除了帮助热线之外,还有一个代码库和一个论坛。搜索作品。

ps:唉,信息中插入的链接坏了 =(

https://www.mql5.com/ru/search#!keyword=ChartOpen&page=2