任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 135 1...128129130131132133134135136137138139140141142...1178 新评论 Sergey Dzyublik 2013.09.10 09:17 #1341 日安,如果不是太难的话,请给一个新手提供建议。 1) 如何声明一个 大小等于某个变量值的数组?(如果i=7声明数组双Muss[7],以此类推)。 2) 如果条件总是假的,为什么用户定义的函数中的数组被认为是充分声明和使用的? while (false){ Alert("aaaaaaaaaa")。 static double Buf_max [9000000]; 静态双Buf_min [9000000];}静态双Buf_min [9000000];}。 3) 在用户函数中和一般情况下,仅仅是一个数组和一个静态数组之间是否有区别? Paladin80 2013.09.10 09:34 #1342 ALXIMIKS: 日安,如果不是太难的话,请给一个新手提供建议。 1) 如何声明一个大小等于某个变量值的数组?(如果i=7声明数组双Muss[7],以此类推)。 ... 1)ArrayResize() int i=7; double Muss[]; // объявление динамического массива //--- int init() { ArrayResize(Muss,i); // устанавливает новый размер массива return(0); } [删除] 2013.09.10 11:19 #1343 这样的事情。 如果你调用MarketInfo(Symbol(),MODE_TRADEALLOWED),它会返回 - 1=允许交易。 但如果你在市场概览中把鼠标悬停在符号上,就会弹出带有文字的工具提示--交易:关闭。 这里有什么诀窍? 它确实不让我交易,但为什么MODE_TRADEALLOWED返回错误的值? Viktar Dzemikhau 2013.09.10 12:01 #1344 chief2000: 你运行了多少次指标?看起来是好几次(周期性在你的结果中很明显)。 在deinit中增加一个带 "分隔符 "的打印,设置输入条件或在脚本中重做,使其运行不超过一次,这样就会更清楚了。 好主意))。 我把它变得更简单,像这样。 //+------------------------------------------------------------------+ //| massive_fffffffff.mq4 | //| hoz | //| | //+------------------------------------------------------------------+ #property copyright "hoz" #property link "" int start() { int Array[4] = {1, 2, 3, 4}; int x1, x2, x3, x4; int Array_Size = ArrayRange(Array, 0); for(int i=0; i<11; i++) { i++; Print("_i = ", i); } for(x1=0; x1<Array_Size; x1++) { Print("Combination = ", Array[x1]); for(x2=x1+1; x2<Array_Size; x2++) { Print("Combination = ", Array[x1] + " " + Array[x2]); for(x3=x2+1; x3<Array_Size; x3++) { Print("Combination = ", Array[x1] + " " + Array[x2] + " " + Array[x3]); for(x4=x3+1; x4<Array_Size; x4++) { Print("Combination = ", Array[x1] + " " + Array[x2] + " " + Array[x3] + " " + Array[x4]); } } } } for(int h=0; h<11; i++) { h++; Print("h = ", h); } return(0); } 记录本上的开头是这样的。 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 9 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 9 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 7 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 5 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 3 2013.09.10 17:09:08 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 1 2013.09.10 17:09:07 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 11 2013.09.10 17:09:07 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 10 2013.09.10 17:09:07 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 9 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 9 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 7 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 5 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 3 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 1 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 11 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 10 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: h = 9 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: Combination = 1 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 11 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 9 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 7 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 5 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 3 2013.09.10 17:09:06 2013.08.15 00:00 massive_fffffffff EURUSD.GI,M5: _i = 1 2013.09.10 17:09:06 massive_fffffffff test started 2013.09.10 17:09:04 TestGenerator: spread set to 2 2013.09.10 17:09:04 massive_fffffffff EURUSD.GI,M5: loaded successfully 甚至根本就没有任何周期。没有秩序。输出完全不一致。 Oleg 2013.09.10 14:52 #1345 hoz: 好主意))。 我把它变得更简单,像这样。 记录本上的开头是这样的。 甚至根本就没有任何周期。没有秩序。输出完全不一致。 你把事情弄得有点复杂了,在测试阶段,一切都可以在1-2行中完成,取决于变体。在Inite中可以做到一切。产出的顺序没有规定。 bool Status_Run = true; start() { if(Status_Run==true) { Status_Run = false; Print("---START ---"); ...... } } Viktar Dzemikhau 2013.09.10 17:55 #1346 chief2000: 你把事情弄得有点复杂了,在检查阶段,一切都可以在1-2行中完成,取决于变体。在Inite中可以做到一切。没有规定产出的顺序。 你的意思是引入一个标志,使循环被执行一次就完事了吗?我没有停止执行... 这就是它的工作方式。 //+------------------------------------------------------------------+ //| massive_fffffffff.mq4 | //| hoz | //| | //+------------------------------------------------------------------+ #property copyright "hoz" #property link "" int start() { bool Status_run = true; int Array[4] = {1, 2, 3, 4}; int x1, x2, x3, x4; int Array_Size = ArrayRange(Array, 0); if (Status_run == true) { Status_run = false; for(x1=0; x1<Array_Size; x1++) { Print("Combination = ", Array[x1]); for(x2=x1+1; x2<Array_Size; x2++) { Print("Combination = ", Array[x1] + " " + Array[x2]); for(x3=x2+1; x3<Array_Size; x3++) { Print("Combination = ", Array[x1] + " " + Array[x2] + " " + Array[x3]); for(x4=x3+1; x4<Array_Size; x4++) { Print("Combination = ", Array[x1] + " " + Array[x2] + " " + Array[x3] + " " + Array[x4]); } } } } } return(0); } 不过,从本质上讲,代码应该像INITA中那样工作,一劳永逸。然后布尔变量Status_run将立即被设置为false,if条件不会再执行。但我的日志由于某种原因没有用完的输出。 Oleg 2013.09.10 18:53 #1347 hoz: 你的意思是引入一个标志,使循环被执行一次就完事了吗?我没有停止跑步...这就是它的工作方式。虽然在本质上,代码应该像INITE那样工作,一次就可以了。然后布尔变量Status_run将立即被设置为false,if条件不会再执行。但不知为何,我在日志中没有用完的输出。 你断言这个循环给出了错误的结果,我向你提供了一个测试的方法。如果它按照你的需要工作,那么你应该遵循你的算法,如果不是,你应该在检查时改变它。PS "Status_run "必须在start()之前创建,它是一个 全局变量。 forexman77 2013.09.10 19:01 #1348 大师们,给你们一个忠告。 我设置了bool 变量 Flag=true; 开始。 我打开了一个交易 如果( 条件) { Opn_S = true。 标志=false。 } 有一个关于标志的问题,如果标志在打开时返回假,而在打开的条件下有这个标志。传给国旗的真假保持多久,第二天是否重置为零? Sergey Dzyublik 2013.09.10 19:19 #1349 Forexman77: 大师们,给你们一个忠告。 我设置了变量bool=true; ,开始。 我打开了一个交易 如果( 条件) { Opn_S = true。 标志=false。 } 有一个关于标志的问题,如果标志在打开时返回假,而在打开的条件下有这个标志。传给国旗的真假保留多久,第二天会不会重置为零? 不会的,每一个新的刻度线, Flag的值都是真的 。https://book.mql4.com/ru/variables/types 要么全局性地声明该变量--例如在程序的开头,在所有函数之外。 或者让变量成为静态的 - 静态的 bool flag=true; . forexman77 2013.09.10 19:22 #1350 ALXIMIKS: 不会的,每一个新的刻度线, Flag的值都是真的 。https://book.mql4.com/ru/variables/types 要么全局性地声明该变量--在程序的开头,在所有函数之外。 或者让变量成为静态的 - 静态的 bool flag=true; . 谢谢你! 1...128129130131132133134135136137138139140141142...1178 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
日安,如果不是太难的话,请给一个新手提供建议。
1) 如何声明一个 大小等于某个变量值的数组?(如果i=7声明数组双Muss[7],以此类推)。
2) 如果条件总是假的,为什么用户定义的函数中的数组被认为是充分声明和使用的?
while (false){
Alert("aaaaaaaaaa")。
static double Buf_max [9000000];
静态双Buf_min [9000000];}静态双Buf_min [9000000];}。
3) 在用户函数中和一般情况下,仅仅是一个数组和一个静态数组之间是否有区别?
日安,如果不是太难的话,请给一个新手提供建议。
1) 如何声明一个大小等于某个变量值的数组?(如果i=7声明数组双Muss[7],以此类推)。
...
1)ArrayResize()
这样的事情。
如果你调用MarketInfo(Symbol(),MODE_TRADEALLOWED),它会返回 - 1=允许交易。
但如果你在市场概览中把鼠标悬停在符号上,就会弹出带有文字的工具提示--交易:关闭。
这里有什么诀窍?
它确实不让我交易,但为什么MODE_TRADEALLOWED返回错误的值?
你运行了多少次指标?看起来是好几次(周期性在你的结果中很明显)。
在deinit中增加一个带 "分隔符 "的打印,设置输入条件或在脚本中重做,使其运行不超过一次,这样就会更清楚了。
好主意))。
我把它变得更简单,像这样。
记录本上的开头是这样的。
甚至根本就没有任何周期。没有秩序。输出完全不一致。
好主意))。
我把它变得更简单,像这样。
记录本上的开头是这样的。
甚至根本就没有任何周期。没有秩序。输出完全不一致。
你把事情弄得有点复杂了,在测试阶段,一切都可以在1-2行中完成,取决于变体。在Inite中可以做到一切。产出的顺序没有规定。
你把事情弄得有点复杂了,在检查阶段,一切都可以在1-2行中完成,取决于变体。在Inite中可以做到一切。没有规定产出的顺序。
你的意思是引入一个标志,使循环被执行一次就完事了吗?我没有停止执行... 这就是它的工作方式。
不过,从本质上讲,代码应该像INITA中那样工作,一劳永逸。然后布尔变量Status_run将立即被设置为false,if条件不会再执行。但我的日志由于某种原因没有用完的输出。
你的意思是引入一个标志,使循环被执行一次就完事了吗?我没有停止跑步...这就是它的工作方式。
虽然在本质上,代码应该像INITE那样工作,一次就可以了。然后布尔变量Status_run将立即被设置为false,if条件不会再执行。但不知为何,我在日志中没有用完的输出。
你断言这个循环给出了错误的结果,我向你提供了一个测试的方法。如果它按照你的需要工作,那么你应该遵循你的算法,如果不是,你应该在检查时改变它。PS "Status_run "必须在start()之前创建,它是一个
全局变量。
大师们,给你们一个忠告。 我设置了bool 变量 Flag=true; 开始。
我打开了一个交易
如果( 条件)
{
Opn_S = true。
标志=false。
}
有一个关于标志的问题,如果标志在打开时返回假,而在打开的条件下有这个标志。传给国旗的真假保持多久,第二天是否重置为零?
大师们,给你们一个忠告。 我设置了变量bool=true; ,开始。
我打开了一个交易
如果( 条件)
{
Opn_S = true。
标志=false。
}
有一个关于标志的问题,如果标志在打开时返回假,而在打开的条件下有这个标志。传给国旗的真假保留多久,第二天会不会重置为零?
不会的,每一个新的刻度线, Flag的值都是真的 。https://book.mql4.com/ru/variables/types
要么全局性地声明该变量--例如在程序的开头,在所有函数之外。
或者让变量成为静态的 - 静态的 bool flag=true; .
不会的,每一个新的刻度线, Flag的值都是真的 。https://book.mql4.com/ru/variables/types
要么全局性地声明该变量--在程序的开头,在所有函数之外。
或者让变量成为静态的 - 静态的 bool flag=true; .