初学者的问题 MQL5 MT5 MetaTrader 5 - 页 780 1...773774775776777778779780781782783784785786787...1503 新评论 Vladimir Karputov 2017.09.14 20:57 #7791 LookingFor: for(bars=start; bars<rates_total; bars++)同事们,请帮助我我不明白这个循环有什么问题,来自手柄的数据没有进入数组psa1。在OnInit()中做如下工作。 ArraySetAsSeries(pca1,true);之后,相应地改变你的循环。 for(bars=start; bars<rates_total; bars++)考虑到现在你的指标的最右边的柱子的索引是 "0"。 Aliaksandr Yemialyanau 2017.09.15 05:45 #7792 如何通过按任意键或特定键来终止一个脚本? LookingFor 2017.09.15 11:44 #7793 弗拉基米尔,谢谢你,在不改变索引的 情况下,你是否没有办法? Vladimir Karputov 2017.09.15 11:51 #7794 LookingFor:弗拉基米尔,谢谢你,你不能在不改变索引的 情况下做任何事情吗?如果你不想做什么,那么就开始用历史数据进行调试测试。一步一步来。请看复制到哪里的数据。 Vladimir Karputov 2017.09.15 12:15 #7795 LookingFor:同事们,请帮助我我不明白这个循环有什么问题,来自手柄的数据没有进入数组psa1。LookingFor: Vladimir,谢谢你,但你不改变索引 就不能做什么?首先,你需要使代码具有可读性(Styler - 使用源代码 - 程序开发 - MetaEditor)//+------------------------------------------------------------------+ //| 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[]) { if(prev_calculated==0) { i=bars=start=1; } else { start=prev_calculated; } for(bars=start; bars<rates_total; bars++) { CopyBuffer(pulse_Handle,0,start,1,pca1); if(pca1[bars]!=pca1[bars-1]) { pca2[i]=pca1[bars]; i++; string s=""; s=IntegerToString(pca1[bars])+" "; Print(s); continue; } else continue; } //--- return value of prev_calculated for next call return(rates_total); }你必须同时检查 - 但CopyBuffer函数返回的是什么?请参考CopyBuffer。返回的值复制的数组元素的数量,如果出错则为-1。此外,我们设置断点并对历史数据进行调试并控制一些变量。time[rates_total-1] time[0] bars pca1[???]df Стилизатор - Работа с исходным кодом - Разработка программ - Справка по MetaEditor www.metatrader5.com Данная функция предназначена для оформления исходного кода в соответствии с рекомендуемым стандартом. Это позволяет сделать код более читаемым... Vitaly Muzichenko 2017.09.16 08:46 #7796 帮助转化为Adouble GetExtremumZZPrice(string symb="0",ENUM_TIMEFRAMES tf=0,int ne=0,int dp=12,int dv=5,int bs=3) { if(symb=="0") symb=Symbol(); double zz; int ke=0; for(int i=0; i<Bars(symb, tf)-1; i++) { zz=iCustom(symb, tf, "ZigZag", dp, dv, bs, 0, i); if(zz!=0) { ke++; if(ke>ne) return(zz); }} return(0); } Alexey Viktorov 2017.09.16 09:31 #7797 Vitaly Muzichenko:帮助转化为A读取指标缓冲区,并在生成的数组中寻找ZZ。 Документация по MQL5: Доступ к таймсериям и индикаторам / CopyBuffer www.mql5.com Доступ к таймсериям и индикаторам / CopyBuffer - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5 [删除] 2017.09.16 14:48 #7798 Vitaly Muzichenko:帮助转化为A 首先得到指示器手柄!然后使用CopyBuffer 得到一个所需值的数组,然后循环浏览它们。 Vitaly Muzichenko 2017.09.16 15:24 #7799 谢谢大家!另一个问题:我翻遍了论坛和kodobase,我找不到任何关于 "Trend.mqh "的应用,它似乎都在那里。如果有一个应用程序的链接,请发到这里,或者通过代码给我一个例子。我已经发现许多 使用Rsi、Ma、Adh和其他EA的EA,但没有一个使用SB。它是如此糟糕,还是我没有找到代码,谁在使用它?我需要:有一个代码,在其中我得到了几个时间框架的MA_ma1 = iMA(Symbol,PERIOD_M15,MAFast,0,MAMethod,MAPrice,i) _ma2 = iMA(Symbol,PERIOD_M30,MAFast,0,MAMethod,MAPrice,i) _ma3 = iMA(Symbol,PERIOD_H1, MAFast,0,MAMethod,MAPrice,i)不在OnInit的mql5中创建几十个手柄,希望SB能解决我的问题。 Vladimir Karputov 2017.09.16 15:43 #7800 Vitaly Muzichenko:谢谢大家!另一个问题:我翻遍了论坛和kodobase,我找不到任何关于 "Trend.mqh "的应用,它似乎都在那里。如果有一个应用程序的链接,请发到这里,或者通过代码给我一个例子。我已经发现许多使用Rsi、Ma、Adh和其他EA的EA,但没有一个使用SB。它真的那么糟糕吗?还是我没有找到代码,谁在使用它?我需要:有一个代码,在其中我得到了几个时间框架的MA在OnInit中不要在mql5中创建几十个手柄,我希望SB能解决我的问题。我必须创建所有的手柄或 "Trend.mqh::CiMA "类的对象。 1...773774775776777778779780781782783784785786787...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
for(bars=start; bars<rates_total; bars++)
同事们,请帮助我
我不明白这个循环有什么问题,来自手柄的数据没有进入数组psa1。
在OnInit()中做如下工作。
之后,相应地改变你的循环。
for(bars=start; bars<rates_total; bars++)
考虑到现在你的指标的最右边的柱子的索引是 "0"。
如何通过按任意键或特定键来终止一个脚本?
弗拉基米尔,谢谢你,你不能在不改变索引的 情况下做任何事情吗?
如果你不想做什么,那么就开始用历史数据进行调试测试。一步一步来。请看复制到哪里的数据。
同事们,请帮助我
我不明白这个循环有什么问题,来自手柄的数据没有进入数组psa1。
Vladimir,谢谢你,但你不改变索引 就不能做什么?
首先,你需要使代码具有可读性(Styler - 使用源代码 - 程序开发 - MetaEditor)
你必须同时检查 - 但CopyBuffer函数返回的是什么?请参考CopyBuffer。
返回的值
此外,我们设置断点并对历史数据进行调试
并控制一些变量。
df
帮助转化为A
帮助转化为A
读取指标缓冲区,并在生成的数组中寻找ZZ。
帮助转化为A
谢谢大家!
另一个问题:我翻遍了论坛和kodobase,我找不到任何关于 "Trend.mqh "的应用,它似乎都在那里。如果有一个应用程序的链接,请发到这里,或者通过代码给我一个例子。
我已经发现许多 使用Rsi、Ma、Adh和其他EA的EA,但没有一个使用SB。它是如此糟糕,还是我没有找到代码,谁在使用它?
我需要:有一个代码,在其中我得到了几个时间框架的MA
不在OnInit的mql5中创建几十个手柄,希望SB能解决我的问题。
谢谢大家!
另一个问题:我翻遍了论坛和kodobase,我找不到任何关于 "Trend.mqh "的应用,它似乎都在那里。如果有一个应用程序的链接,请发到这里,或者通过代码给我一个例子。
我已经发现许多使用Rsi、Ma、Adh和其他EA的EA,但没有一个使用SB。它真的那么糟糕吗?还是我没有找到代码,谁在使用它?
我需要:有一个代码,在其中我得到了几个时间框架的MA
在OnInit中不要在mql5中创建几十个手柄,我希望SB能解决我的问题。
我必须创建所有的手柄或 "Trend.mqh::CiMA "类的对象。