新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 729 1...722723724725726727728729730731732733734735736...1953 新评论 Carcass77 2019.01.10 18:29 #7281 Igor Makanu:抄袭是没有用的,你需要阅读,这里的文章是https://www.mql5.com/ru/articles/1456纯粹用于视觉和信息方面 Alekseu Fedotov 2019.01.10 18:46 #7282 Carcass77:纯粹用于视觉和信息的目的//+------------------------------------------------------------------+ //| atrValues.mq4 | //| Copyright 2017, MetaQuotes Software Corp. | //| https://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2017, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property strict extern int atrPeriod=10; extern int infoCorner=0; extern int shift=0; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { //--- double atr1=iATR(Symbol(),1,atrPeriod,shift); double atr5=iATR(Symbol(),5,atrPeriod,shift); double atr15=iATR(Symbol(),15,atrPeriod,shift); double atr30=iATR(Symbol(),30,atrPeriod,shift); double atr60=iATR(Symbol(),60,atrPeriod,shift); double atr240=iATR(Symbol(),240,atrPeriod,shift); double atr1440=iATR(Symbol(),1440,atrPeriod,shift); double atr10080=iATR(Symbol(),10080,atrPeriod,shift); double atr43200=iATR(Symbol(),43200,atrPeriod,shift); //--- ObjectCreate("ObjName1",OBJ_LABEL,0,0,0); ObjectSetText("ObjName1","ATR"+IntegerToString(atrPeriod,0)+": M1="+DoubleToStr(atr1,5),8,"Verdana",Red); ObjectSet("ObjName1",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName1",OBJPROP_XDISTANCE,10); ObjectSet("ObjName1",OBJPROP_YDISTANCE,25); //--- ObjectCreate("ObjName2",OBJ_LABEL,0,0,0); ObjectSetText("ObjName2","ATR"+IntegerToString(atrPeriod,0)+": M5="+DoubleToStr(atr5,5),8,"Verdana",Red); ObjectSet("ObjName2",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName2",OBJPROP_XDISTANCE,10); ObjectSet("ObjName2",OBJPROP_YDISTANCE,40); //--- ObjectCreate("ObjName3",OBJ_LABEL,0,0,0); ObjectSetText("ObjName3","ATR"+IntegerToString(atrPeriod,0)+": M15="+DoubleToStr(atr15,5),8,"Verdana",Red); ObjectSet("ObjName3",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName3",OBJPROP_XDISTANCE,10); ObjectSet("ObjName3",OBJPROP_YDISTANCE,55); //--- ObjectCreate("ObjName4",OBJ_LABEL,0,0,0); ObjectSetText("ObjName4","ATR"+IntegerToString(atrPeriod,0)+": M30="+DoubleToStr(atr30,5),8,"Verdana",Red); ObjectSet("ObjName4",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName4",OBJPROP_XDISTANCE,10); ObjectSet("ObjName4",OBJPROP_YDISTANCE,70); //--- ObjectCreate("ObjName5",OBJ_LABEL,0,0,0); ObjectSetText("ObjName5","ATR"+IntegerToString(atrPeriod,0)+": M60="+DoubleToStr(atr60,5),8,"Verdana",Red); ObjectSet("ObjName5",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName5",OBJPROP_XDISTANCE,10); ObjectSet("ObjName5",OBJPROP_YDISTANCE,85); //--- ObjectCreate("ObjName6",OBJ_LABEL,0,0,0); ObjectSetText("ObjName6","ATR"+IntegerToString(atrPeriod,0)+": M240="+DoubleToStr(atr240,5),8,"Verdana",Red); ObjectSet("ObjName6",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName6",OBJPROP_XDISTANCE,10); ObjectSet("ObjName6",OBJPROP_YDISTANCE,100); //--- ObjectCreate("ObjName7",OBJ_LABEL,0,0,0); ObjectSetText("ObjName7","ATR"+IntegerToString(atrPeriod,0)+": M1440="+DoubleToStr(atr1440,5),8,"Verdana",Red); ObjectSet("ObjName7",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName7",OBJPROP_XDISTANCE,10); ObjectSet("ObjName7",OBJPROP_YDISTANCE,115); //--- ObjectCreate("ObjName8",OBJ_LABEL,0,0,0); ObjectSetText("ObjName8","ATR"+IntegerToString(atrPeriod,0)+": M10080="+DoubleToStr(atr10080,5),8,"Verdana",Red); ObjectSet("ObjName8",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName8",OBJPROP_XDISTANCE,10); ObjectSet("ObjName8",OBJPROP_YDISTANCE,130); //--- ObjectCreate("ObjName9",OBJ_LABEL,0,0,0); ObjectSetText("ObjName9","ATR"+IntegerToString(atrPeriod,0)+": M43200="+DoubleToStr(atr43200,5),8,"Verdana",Red); ObjectSet("ObjName9",OBJPROP_CORNER,infoCorner); ObjectSet("ObjName9",OBJPROP_XDISTANCE,10); ObjectSet("ObjName9",OBJPROP_YDISTANCE,145); //--- } //+------------------------------------------------------------------+ Carcass77 2019.01.10 19:03 #7283 Alekseu Fedotov: 冒出了很多错误) Alekseu Fedotov 2019.01.10 19:08 #7284 Carcass77:大量的错误)对我来说,它编译得很好。 Carcass77 2019.01.10 19:16 #7285 Alekseu Fedotov:对我来说,它编译得很好。发现我的错误。非常感谢您! Ilya Prozumentov 2019.01.10 20:11 #7286 我怎样才能在一个具有非显式类型的对象(即对象类型没有明确设置,而是通过模板<typename T1>)的模板类中调用T1对象的任何方法?所有的T1对象都有相同的方法。 multiplicator 2019.01.11 05:00 #7287 Igor Makanu:我明白了,手边没有终端,但似乎只有元编辑器中的错误日志是红色突出显示的,而在终端和测试器中只有图标是红色的,而文本本身似乎没有 "变红"它说。(用黑色突出显示)。 错的参数 这是为了表明程序员输入的参数集不正确。包含这个返回代码的结果字符串将在一般优化表中以红色突出显示。 将不对该专家顾问的参数集进行测试。而这里是一般的优化表。 没有任何东西是用红色强调的。 只是在这样的线路中,优化结果为零。 是手册在说谎还是我做错了什么? Roman Sharanov 2019.01.11 08:34 #7288 有什么办法可以在输入中显示按键,以便可以重新分配? Alekseu Fedotov 2019.01.11 09:35 #7289 Roman Sharanov: 有什么办法能让钥匙进入输入端,从而可以重新分配?可以。 #property copyright "Copyright 2017, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #property strict #property indicator_chart_window //--- input parameters input string key = "A"; //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //--- //--- return value of prev_calculated for next call return(rates_total); } //+------------------------------------------------------------------+ void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { if(id==CHARTEVENT_KEYDOWN) { if(lparam==(StringGetChar(key,0))) { Alert("нажатая клавиша = ",key); Alert("код нажатой клавиши = ",StringGetChar(key,0)); } } } //+------------------------------------------------------------------+ Ilya Prozumentov 2019.01.11 10:24 #7290 multiplicator:这里说。(用黑色突出显示)。 错的参数 旨在向程序员指示一组不正确的输入参数,带有该返回代码的结果字符串将在一般优化表中以红色突出显示。 将不对该专家顾问的参数集进行测试。而这里是一般的优化表。 没有任何东西是用红色强调的。 只是,在这样的线路中,优化的结果是零。 是手册在说谎还是我做错了什么?现在你可以看到,在这方面没有任何东西被强调和与手册相抵触。 1...722723724725726727728729730731732733734735736...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
抄袭是没有用的,你需要阅读,这里的文章是https://www.mql5.com/ru/articles/1456
纯粹用于视觉和信息方面
纯粹用于视觉和信息的目的
冒出了很多错误)
大量的错误)
对我来说,它编译得很好。
对我来说,它编译得很好。
发现我的错误。非常感谢您!
我明白了,手边没有终端,但似乎只有元编辑器中的错误日志是红色突出显示的,而在终端和测试器中只有图标是红色的,而文本本身似乎没有 "变红"
它说。
(用黑色突出显示)。
错的参数
这是为了表明程序员输入的参数集不正确。包含这个返回代码的结果字符串将在一般优化表中以红色突出显示。
将不对该专家顾问的参数集进行测试。
而这里是一般的优化表。
没有任何东西是用红色强调的。
只是在这样的线路中,优化结果为零。
是手册在说谎还是我做错了什么?
有什么办法能让钥匙进入输入端,从而可以重新分配?
可以。
这里说。
(用黑色突出显示)。
错的参数
旨在向程序员指示一组不正确的输入参数,带有该返回代码的结果字符串将在一般优化表中以红色突出显示。
将不对该专家顾问的参数集进行测试。
而这里是一般的优化表。
没有任何东西是用红色强调的。
只是,在这样的线路中,优化的结果是零。
是手册在说谎还是我做错了什么?
现在你可以看到,在这方面没有任何东西被强调和与手册相抵触。