任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 996

 
001:

最初的变量是存在的,但在工作过程中需要新的变量。问题来了,我如何通过代码创建新的变量?我有N个变量和


和不同的TFs被使用。

你可以使用数组和函数
 
Vinin:
你可以使用数组和函数
这就是我问的原因,因为我一直在绞尽脑汁思考如何做。
 
001:
这就是我问你的原因,我在绞尽脑汁地想如何做。

到目前为止,只谈到了一般情况。

没有具体细节,你是做不到的。

给我带来绞尽脑汁的代码

 
Vinin :

到目前为止,我们只讨论了将军。

没有细节是行不通的。

给我让我头疼的代码


这是针对 M15 的。每N分钟是一个变量,对于M15有96个。我想得到一个漂亮的代码而不是这种耻辱。

 int количество_лоу_15= 0 ;
int количество_лоу_30= 0 ;
int количество_лоу_45= 0 ;
int количество_лоу_60= 0 ;
int количество_лоу_75= 0 ;
int количество_лоу_90= 0 ;
int количество_лоу_105= 0 ;
int количество_лоу_120= 0 ;
int количество_лоу_135= 0 ;
int количество_лоу_150= 0 ;
int количество_лоу_165= 0 ;
int количество_лоу_180= 0 ;
int количество_лоу_195= 0 ;
int количество_лоу_210= 0 ;
int количество_лоу_225= 0 ;
int количество_лоу_240= 0 ;
int количество_лоу_255= 0 ;
int количество_лоу_270= 0 ;
int количество_лоу_285= 0 ;
int количество_лоу_300= 0 ;
int количество_лоу_315= 0 ;
int количество_лоу_330= 0 ;
int количество_лоу_345= 0 ;
int количество_лоу_360= 0 ;
int количество_лоу_375= 0 ;
int количество_лоу_390= 0 ;
int количество_лоу_405= 0 ;
int количество_лоу_420= 0 ;
int количество_лоу_435= 0 ;
int количество_лоу_450= 0 ;
int количество_лоу_465= 0 ;
int количество_лоу_480= 0 ;
int количество_лоу_495= 0 ;
int количество_лоу_510= 0 ;
int количество_лоу_525= 0 ;
int количество_лоу_540= 0 ;
int количество_лоу_555= 0 ;
int количество_лоу_570= 0 ;
int количество_лоу_585= 0 ;
int количество_лоу_600= 0 ;
int количество_лоу_615= 0 ;
int количество_лоу_630= 0 ;
int количество_лоу_645= 0 ;
int количество_лоу_660= 0 ;
int количество_лоу_675= 0 ;
int количество_лоу_690= 0 ;
int количество_лоу_705= 0 ;
int количество_лоу_720= 0 ;
int количество_лоу_735= 0 ;
int количество_лоу_750= 0 ;
int количество_лоу_765= 0 ;
int количество_лоу_780= 0 ;
int количество_лоу_795= 0 ;
int количество_лоу_810= 0 ;
int количество_лоу_825= 0 ;
int количество_лоу_840= 0 ;
int количество_лоу_855= 0 ;
int количество_лоу_870= 0 ;
int количество_лоу_885= 0 ;
int количество_лоу_900= 0 ;
int количество_лоу_915= 0 ;
int количество_лоу_930= 0 ;
int количество_лоу_945= 0 ;
int количество_лоу_960= 0 ;
int количество_лоу_975= 0 ;
int количество_лоу_990= 0 ;
int количество_лоу_1005= 0 ;
int количество_лоу_1020= 0 ;
int количество_лоу_1035= 0 ;
int количество_лоу_1050= 0 ;
int количество_лоу_1065= 0 ;
int количество_лоу_1080= 0 ;
int количество_лоу_1095= 0 ;
int количество_лоу_1110= 0 ;
int количество_лоу_1125= 0 ;
int количество_лоу_1140= 0 ;
int количество_лоу_1155= 0 ;
int количество_лоу_1170= 0 ;
int количество_лоу_1185= 0 ;
int количество_лоу_1200= 0 ;
int количество_лоу_1215= 0 ;
int количество_лоу_1230= 0 ;
int количество_лоу_1245= 0 ;
int количество_лоу_1260= 0 ;
int количество_лоу_1275= 0 ;
int количество_лоу_1290= 0 ;
int количество_лоу_1305= 0 ;
int количество_лоу_1320= 0 ;
int количество_лоу_1335= 0 ;
int количество_лоу_1350= 0 ;
int количество_лоу_1365= 0 ;
int количество_лоу_1380= 0 ;
int количество_лоу_1395= 0 ;
int количество_лоу_1410= 0 ;
int количество_лоу_1425= 0 ;
////////   
   if (время_лоу   ==     15    )   количество_лоу_15   =количество_лоу_15   + 1 ;
   if (время_лоу   ==     30    )   количество_лоу_30   =количество_лоу_30   + 1 ;
   if (время_лоу   ==     45    )   количество_лоу_45   =количество_лоу_45   + 1 ;
   if (время_лоу   ==     60    )   количество_лоу_60   =количество_лоу_60   + 1 ;
   if (время_лоу   ==     75    )   количество_лоу_75   =количество_лоу_75   + 1 ;
   if (время_лоу   ==     90    )   количество_лоу_90   =количество_лоу_90   + 1 ;
   if (время_лоу   ==   105    )   количество_лоу_105   =количество_лоу_105   + 1 ;
   if (время_лоу   ==   120    )   количество_лоу_120   =количество_лоу_120   + 1 ;
   if (время_лоу   ==   135    )   количество_лоу_135   =количество_лоу_135   + 1 ;
   if (время_лоу   ==   150    )   количество_лоу_150   =количество_лоу_150   + 1 ;
   if (время_лоу   ==   165    )   количество_лоу_165   =количество_лоу_165   + 1 ;
   if (время_лоу   ==   180    )   количество_лоу_180   =количество_лоу_180   + 1 ;
   if (время_лоу   ==   195    )   количество_лоу_195   =количество_лоу_195   + 1 ;
   if (время_лоу   ==   210    )   количество_лоу_210   =количество_лоу_210   + 1 ;
   if (время_лоу   ==   225    )   количество_лоу_225   =количество_лоу_225   + 1 ;
   if (время_лоу   ==   240    )   количество_лоу_240   =количество_лоу_240   + 1 ;
   if (время_лоу   ==   255    )   количество_лоу_255   =количество_лоу_255   + 1 ;
   if (время_лоу   ==   270    )   количество_лоу_270   =количество_лоу_270   + 1 ;
   if (время_лоу   ==   285    )   количество_лоу_285   =количество_лоу_285   + 1 ;
   if (время_лоу   ==   300    )   количество_лоу_300   =количество_лоу_300   + 1 ;
   if (время_лоу   ==   315    )   количество_лоу_315   =количество_лоу_315   + 1 ;
   if (время_лоу   ==   330    )   количество_лоу_330   =количество_лоу_330   + 1 ;
   if (время_лоу   ==   345    )   количество_лоу_345   =количество_лоу_345   + 1 ;
   if (время_лоу   ==   360    )   количество_лоу_360   =количество_лоу_360   + 1 ;
   if (время_лоу   ==   375    )   количество_лоу_375   =количество_лоу_375   + 1 ;
   if (время_лоу   ==   390    )   количество_лоу_390   =количество_лоу_390   + 1 ;
   if (время_лоу   ==   405    )   количество_лоу_405   =количество_лоу_405   + 1 ;
   if (время_лоу   ==   420    )   количество_лоу_420   =количество_лоу_420   + 1 ;
   if (время_лоу   ==   435    )   количество_лоу_435   =количество_лоу_435   + 1 ;
   if (время_лоу   ==   450    )   количество_лоу_450   =количество_лоу_450   + 1 ;
   if (время_лоу   ==   465    )   количество_лоу_465   =количество_лоу_465   + 1 ;
   if (время_лоу   ==   480    )   количество_лоу_480   =количество_лоу_480   + 1 ;
   if (время_лоу   ==   495    )   количество_лоу_495   =количество_лоу_495   + 1 ;
   if (время_лоу   ==   510    )   количество_лоу_510   =количество_лоу_510   + 1 ;
   if (время_лоу   ==   525    )   количество_лоу_525   =количество_лоу_525   + 1 ;
   if (время_лоу   ==   540    )   количество_лоу_540   =количество_лоу_540   + 1 ;
   if (время_лоу   ==   555    )   количество_лоу_555   =количество_лоу_555   + 1 ;
   if (время_лоу   ==   570    )   количество_лоу_570   =количество_лоу_570   + 1 ;
   if (время_лоу   ==   585    )   количество_лоу_585   =количество_лоу_585   + 1 ;
   if (время_лоу   ==   600    )   количество_лоу_600   =количество_лоу_600   + 1 ;
   if (время_лоу   ==   615    )   количество_лоу_615   =количество_лоу_615   + 1 ;
   if (время_лоу   ==   630    )   количество_лоу_630   =количество_лоу_630   + 1 ;
   if (время_лоу   ==   645    )   количество_лоу_645   =количество_лоу_645   + 1 ;
   if (время_лоу   ==   660    )   количество_лоу_660   =количество_лоу_660   + 1 ;
   if (время_лоу   ==   675    )   количество_лоу_675   =количество_лоу_675   + 1 ;
   if (время_лоу   ==   690    )   количество_лоу_690   =количество_лоу_690   + 1 ;
   if (время_лоу   ==   705    )   количество_лоу_705   =количество_лоу_705   + 1 ;
   if (время_лоу   ==   720    )   количество_лоу_720   =количество_лоу_720   + 1 ;
   if (время_лоу   ==   735    )   количество_лоу_735   =количество_лоу_735   + 1 ;
   if (время_лоу   ==   750    )   количество_лоу_750   =количество_лоу_750   + 1 ;
   if (время_лоу   ==   765    )   количество_лоу_765   =количество_лоу_765   + 1 ;
   if (время_лоу   ==   780    )   количество_лоу_780   =количество_лоу_780   + 1 ;
   if (время_лоу   ==   795    )   количество_лоу_795   =количество_лоу_795   + 1 ;
   if (время_лоу   ==   810    )   количество_лоу_810   =количество_лоу_810   + 1 ;
   if (время_лоу   ==   825    )   количество_лоу_825   =количество_лоу_825   + 1 ;
   if (время_лоу   ==   840    )   количество_лоу_840   =количество_лоу_840   + 1 ;
   if (время_лоу   ==   855    )   количество_лоу_855   =количество_лоу_855   + 1 ;
   if (время_лоу   ==   870    )   количество_лоу_870   =количество_лоу_870   + 1 ;
   if (время_лоу   ==   885    )   количество_лоу_885   =количество_лоу_885   + 1 ;
   if (время_лоу   ==   900    )   количество_лоу_900   =количество_лоу_900   + 1 ;
   if (время_лоу   ==   915    )   количество_лоу_915   =количество_лоу_915   + 1 ;
   if (время_лоу   ==   930    )   количество_лоу_930   =количество_лоу_930   + 1 ;
   if (время_лоу   ==   945    )   количество_лоу_945   =количество_лоу_945   + 1 ;
   if (время_лоу   ==   960    )   количество_лоу_960   =количество_лоу_960   + 1 ;
   if (время_лоу   ==   975    )   количество_лоу_975   =количество_лоу_975   + 1 ;
   if (время_лоу   ==   990    )   количество_лоу_990   =количество_лоу_990   + 1 ;
   if (время_лоу   ==   1005    )   количество_лоу_1005   =количество_лоу_1005   + 1 ;
   if (время_лоу   ==   1020    )   количество_лоу_1020   =количество_лоу_1020   + 1 ;
   if (время_лоу   ==   1035    )   количество_лоу_1035   =количество_лоу_1035   + 1 ;
   if (время_лоу   ==   1050    )   количество_лоу_1050   =количество_лоу_1050   + 1 ;
   if (время_лоу   ==   1065    )   количество_лоу_1065   =количество_лоу_1065   + 1 ;
   if (время_лоу   ==   1080    )   количество_лоу_1080   =количество_лоу_1080   + 1 ;
   if (время_лоу   ==   1095    )   количество_лоу_1095   =количество_лоу_1095   + 1 ;
   if (время_лоу   ==   1110    )   количество_лоу_1110   =количество_лоу_1110   + 1 ;
   if (время_лоу   ==   1125    )   количество_лоу_1125   =количество_лоу_1125   + 1 ;
   if (время_лоу   ==   1140    )   количество_лоу_1140   =количество_лоу_1140   + 1 ;
   if (время_лоу   ==   1155    )   количество_лоу_1155   =количество_лоу_1155   + 1 ;
   if (время_лоу   ==   1170    )   количество_лоу_1170   =количество_лоу_1170   + 1 ;
   if (время_лоу   ==   1185    )   количество_лоу_1185   =количество_лоу_1185   + 1 ;
   if (время_лоу   ==   1200    )   количество_лоу_1200   =количество_лоу_1200   + 1 ;
   if (время_лоу   ==   1215    )   количество_лоу_1215   =количество_лоу_1215   + 1 ;
   if (время_лоу   ==   1230    )   количество_лоу_1230   =количество_лоу_1230   + 1 ;
   if (время_лоу   ==   1245    )   количество_лоу_1245   =количество_лоу_1245   + 1 ;
   if (время_лоу   ==   1260    )   количество_лоу_1260   =количество_лоу_1260   + 1 ;
   if (время_лоу   ==   1275    )   количество_лоу_1275   =количество_лоу_1275   + 1 ;
   if (время_лоу   ==   1290    )   количество_лоу_1290   =количество_лоу_1290   + 1 ;
   if (время_лоу   ==   1305    )   количество_лоу_1305   =количество_лоу_1305   + 1 ;
   if (время_лоу   ==   1320    )   количество_лоу_1320   =количество_лоу_1320   + 1 ;
   if (время_лоу   ==   1335    )   количество_лоу_1335   =количество_лоу_1335   + 1 ;
   if (время_лоу   ==   1350    )   количество_лоу_1350   =количество_лоу_1350   + 1 ;
   if (время_лоу   ==   1365    )   количество_лоу_1365   =количество_лоу_1365   + 1 ;
   if (время_лоу   ==   1380    )   количество_лоу_1380   =количество_лоу_1380   + 1 ;
   if (время_лоу   ==   1395    )   количество_лоу_1395   =количество_лоу_1395   + 1 ;
   if (время_лоу   ==   1410    )   количество_лоу_1410   =количество_лоу_1410   + 1 ;
   if (время_лоу   ==   1425    )   количество_лоу_1425   =количество_лоу_1425   + 1 ;
 
001:

这是针对M15的。每N分钟是一个变量,对于M15来说,有96个。我希望得到一个漂亮的代码,而不是这种混乱的代码。

为了做出正确的决定,你需要了解你想要得到什么

 
001:

这是针对M15的。每N分钟是一个变量,对于M15来说,有96个。我希望有一个漂亮的代码,而不是这种混乱。

使用数组和for循环。如果问题是以编程方式创建一个新的变量,例如例如,每5分钟,以编程方式创建一个新的变量,那么就没有这种可能性。
 
001:
这就是我问的原因,因为我正在绞尽脑汁想如何做。
int MASS_LOW [];                                         // объявляем массив
int quantity=96;                                         // количество_лоу, можно изменять в программе и делать заново ресайз массива
ArrayResize(MASS_LOW,quantity);                          // размер масиива = количество_лоу
ArrayFill(MASS_LOW,0,quantity,0);                        // обнуление массива при необходмости

for(cnt=0; cnt<quantity; cnt++)                       // перебираем количество_лоу (от 0 до 95)
   {
   int c=(cnt+1)*15;                                    // 15 30 45 60 ....
   if (time_low == c) MASS_LOW [cnt]=MASS_LOW [cnt]++; // сравниваем время_лоу и увеличиваем при необходимости ячейку массива
   }

或立即不进行比较和覆盖,只是放大所需的单元格。

cnt = time_low/15-1; 
MASS_LOW [cnt]=MASS_LOW [cnt]++;
 

亲爱的大师们,请帮助我,我是个新人

我正试图了解在MT4中编写的指标是如何工作的。我希望指标是基于条形计算的,也就是说,如果我在自定义移动平均线指标参数中设置周期(=)13,它就是要在相应图表的13个条形上进行平均。

但我没有看到任何像OnBar这样的事件处理程序,只有OnTick。这意味着(我的)指标应该通过将它们分组来自动 "形成 "条形图,例如,按分钟(为图表M1服务)?

我查看了一个现成的指标Custom Moving Average的代码 - 它没有OnTick ...手册中适当的计算事件 说:" 计算事件 只对指标[...]和任何价格数据变化时产生"。换句话说, OnCalculate对每个tick都有反应?

 
fxseminar:

亲爱的大师们,请帮助我,我是个新人

我正试图了解在MT4中编写的指标是如何工作的。我希望指标是基于条形计算的,也就是说,如果我在自定义移动平均线指标参数中设置周期(=)13,它就是要在相应图表的13个条形上进行平均。

但我没有看到任何像OnBar这样的事件处理程序,只有OnTick。这意味着(我的)指标应该通过将它们分组来自动 "形成 "条形图,例如,按分钟(为图表M1服务)?

我查看了一个现成的指标Custom Moving Average的代码 - 它没有OnTick ...手册中适当的计算事件说:" 计算事件 只对指标[...]和任何价格数据变化时产生"。换句话说, OnCalculate对每个tick都有反应?


如果你使用Close[0],对每一个tick。你可以使用Close[1]或Open[0],那么你将只在条形图变化时看到变化。
 
borilunad:
在每个tick上,如果你使用Close[0]。你可以使用Close[1]或Open[0],那么只有当你改变条形图时,你才会看到变化。
-- 对不起,自定义移动平均线 指标不能对点位进行平均你能想象它在日线时间框架上会如何运作(看起来)吗,比如说?