[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 80 1...737475767778798081828384858687...537 新评论 Nameless 2011.02.08 19:11 #791 drknn: 也许那里的值以零结尾,而这个最后的零在归一化过程中被简单地丢弃了?被丢弃是因为条目0.1等同于0.10,0最好被丢弃? 不太可能,我用手看了一下最后一栏的行数值,没有零......而且在某些情况下,数值正好转换为第四位数,有时转换为第三位数,因为尾数>5 Nameless 2011.02.08 19:31 #792 drknn: 它不起作用(它向字符串返回一个正确的值,但变量充满了废话,3位或4位。 有什么方法可以正确地从字符串中获得这个值吗? Владимир Тезис 2011.02.08 19:48 #793 NameLess: 它不起作用((字符串返回一个正确的值,但变量充满了废话,3位或4位。有什么方法可以正确地从字符串中获取数值吗? 你可以做一个dll-case,并在其中进行舍弃。我不得不做这样一件事来简单地丢弃一个数字的小数部分。我不明白另一件事--指标代码是为五位数设计的吗?这个问题可能只能由开发人员来回答。或者只是做你自己的指标。 Nameless 2011.02.08 19:54 #794 drknn: 你可以在里面做一个圆和圆。我不得不这样做,以简单地丢弃一个数字的小数部分。这里不清楚的是--指标代码是为五位数设计的吗?这个问题可能只能由开发人员来回答。或者只是做你自己的指标。 我检查了iMA,似乎没有问题。 说实话,我不知道是什么原因造成的。 Владимир Тезис 2011.02.08 19:58 #795 NameLess: 我看到了iMA,它似乎是好的。说实话,我不明白为什么会发生,但它确实发生了。我不知道如何处理dlls,你至少可以给我一个链接来阅读吗? 我不知道从哪里获得链接来读取dll-case的内容。或者尝试使用MQL4将值放入字符串中,并制作一个函数,只从字符串中提取X个字符。例如,价格=1.25254130 - 这个值被引入到字符串中。该函数应浏览前7个字符,并准确返回这些字符--即1.2525254。我们只是把这个值循环到一个新的字符串中,像珠子一样,一串一串的。然后将其转换为双数并从子程序中返回。 关于dll - 在这个论坛上看一下这样的东西https://www.mql5.com/ru/forum/124088 Nameless 2011.02.08 20:02 #796 drknn: 这已经是一个问题了--你至少需要有一种编程语言的浅显知识。或者尝试将字符串中的值,做成一个函数,只从字符串中取出x个字符。例如,价格=1.25254130 - 这个值被输入到字符串中。该函数应该循环浏览前7个字符,并准确返回这些字符--即1.2525254。我们只是把这个值循环到一个新的字符串中,像珠子一样,一串一串的。然后将其转换为双数并从子程序中返回。 关于dll - 在这个论坛上看到这样的东西https://www.mql5.com/ru/forum/124088 我知道,并不深入,但在任何语言中都没有)))),是的,这个方法很熟悉。谢谢你的建议。我只是从未处理过dlls,因为我从未做过专业的编程。 说实话,我很困惑,因为这个问题根本不符合逻辑,我无法从指标中得到一个值,或者说我可以,但只能得到一个字符串。 Артур 2011.02.08 20:26 #797 请告知如何在EA中允许单次执行一个条件(如开立一个订单),而不是每次都重复执行。在这种情况下,当关闭一个头寸 时,EA不应该打开一个新的头寸。我试着去描绘它,但它并没有如愿以偿。extern bool BUY = true; extern int Magic = 0; extern double Lot = 0.1; extern int takeprofit = 0; extern int stoploss = 0; extern int slippage = 3; double SL,TP; int init(){ return(0); } int start() { if (BUY) { if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP=0; if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); else SL=0; OPENORDER ("Buy"); } return(0); } void OPENORDER(string ord) { int error; while (true) { error=true; if (ord=="Buy") error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"",Magic,0){BUY = false;} } return; } 我预先感谢你。 Nameless 2011.02.08 20:36 #798 nemo811:请告知如何在EA中允许单次执行一个条件(如开立一个订单),而不是每次都重复执行。在这种情况下,当关闭一个头寸时,EA不应该打开一个新的头寸。我试着去描绘它,但它并没有如愿以偿。 我预先感谢你。 我解决这个问题的方法是,在任何行动(本例中为开仓)之前,在条件中放入一个标志;在条件中,开仓后,标志会改变其值,而且,在下一个tick中,程序将不会进入这个条件与开仓。 如果这个过程是自动化的,那么你可以放入一个函数,当没有开仓时 清除所有标志,否则EA将只开仓一次,然后淡出,因为标志将不会改变其值 Артур 2011.02.08 20:41 #799 NameLess: 我解决这个问题的方法是在任何行动(在这种情况下,开仓)之前在条件中放置一个标志,在开仓后的条件中,标志改变了值,而且,在下一个tick中,程序将不会进入这个条件中开仓。 如果这个过程是自动化的,那么你可以使用一个函数,在没有开仓的时刻清除所有标志,否则EA将只开一次单,然后淡出,因为标志不会改变值 请给我一个例子。我只是在学习,还没有面对设置旗帜的任务。) Nameless 2011.02.08 20:45 #800 nemo811: 请给我一个例子。我只是在学习,还没有面对设置旗帜的任务。) 我自己不是专家,我只是告诉你我是如何解决这个问题的。 这不是一个小的代码,你要花更多的时间来弄清楚,而不是从头开始的想法)))。 1...737475767778798081828384858687...537 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
也许那里的值以零结尾,而这个最后的零在归一化过程中被简单地丢弃了?被丢弃是因为条目0.1等同于0.10,0最好被丢弃?
不太可能,我用手看了一下最后一栏的行数值,没有零......而且在某些情况下,数值正好转换为第四位数,有时转换为第三位数,因为尾数>5
它不起作用(它向字符串返回一个正确的值,但变量充满了废话,3位或4位。
有什么方法可以正确地从字符串中获得这个值吗?
它不起作用((字符串返回一个正确的值,但变量充满了废话,3位或4位。
有什么方法可以正确地从字符串中获取数值吗?
你可以做一个dll-case,并在其中进行舍弃。我不得不做这样一件事来简单地丢弃一个数字的小数部分。我不明白另一件事--指标代码是为五位数设计的吗?这个问题可能只能由开发人员来回答。或者只是做你自己的指标。
你可以在里面做一个圆和圆。我不得不这样做,以简单地丢弃一个数字的小数部分。这里不清楚的是--指标代码是为五位数设计的吗?这个问题可能只能由开发人员来回答。或者只是做你自己的指标。
我检查了iMA,似乎没有问题。 说实话,我不知道是什么原因造成的。
我看到了iMA,它似乎是好的。说实话,我不明白为什么会发生,但它确实发生了。我不知道如何处理dlls,你至少可以给我一个链接来阅读吗?
我不知道从哪里获得链接来读取dll-case的内容。或者尝试使用MQL4将值放入字符串中,并制作一个函数,只从字符串中提取X个字符。例如,价格=1.25254130 - 这个值被引入到字符串中。该函数应浏览前7个字符,并准确返回这些字符--即1.2525254。我们只是把这个值循环到一个新的字符串中,像珠子一样,一串一串的。然后将其转换为双数并从子程序中返回。
关于dll - 在这个论坛上看一下这样的东西https://www.mql5.com/ru/forum/124088
这已经是一个问题了--你至少需要有一种编程语言的浅显知识。或者尝试将字符串中的值,做成一个函数,只从字符串中取出x个字符。例如,价格=1.25254130 - 这个值被输入到字符串中。该函数应该循环浏览前7个字符,并准确返回这些字符--即1.2525254。我们只是把这个值循环到一个新的字符串中,像珠子一样,一串一串的。然后将其转换为双数并从子程序中返回。
关于dll - 在这个论坛上看到这样的东西https://www.mql5.com/ru/forum/124088
我知道,并不深入,但在任何语言中都没有)))),是的,这个方法很熟悉。谢谢你的建议。我只是从未处理过dlls,因为我从未做过专业的编程。
说实话,我很困惑,因为这个问题根本不符合逻辑,我无法从指标中得到一个值,或者说我可以,但只能得到一个字符串。
请告知如何在EA中允许单次执行一个条件(如开立一个订单),而不是每次都重复执行。在这种情况下,当关闭一个头寸 时,EA不应该打开一个新的头寸。我试着去描绘它,但它并没有如愿以偿。
extern bool BUY = true; extern int Magic = 0; extern double Lot = 0.1; extern int takeprofit = 0; extern int stoploss = 0; extern int slippage = 3; double SL,TP; int init(){ return(0); } int start() { if (BUY) { if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP=0; if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); else SL=0; OPENORDER ("Buy"); } return(0); } void OPENORDER(string ord) { int error; while (true) { error=true; if (ord=="Buy") error=OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,"",Magic,0){BUY = false;} } return; }
我预先感谢你。请告知如何在EA中允许单次执行一个条件(如开立一个订单),而不是每次都重复执行。在这种情况下,当关闭一个头寸时,EA不应该打开一个新的头寸。我试着去描绘它,但它并没有如愿以偿。
我预先感谢你。我解决这个问题的方法是,在任何行动(本例中为开仓)之前,在条件中放入一个标志;在条件中,开仓后,标志会改变其值,而且,在下一个tick中,程序将不会进入这个条件与开仓。 如果这个过程是自动化的,那么你可以放入一个函数,当没有开仓时 清除所有标志,否则EA将只开仓一次,然后淡出,因为标志将不会改变其值
我解决这个问题的方法是在任何行动(在这种情况下,开仓)之前在条件中放置一个标志,在开仓后的条件中,标志改变了值,而且,在下一个tick中,程序将不会进入这个条件中开仓。 如果这个过程是自动化的,那么你可以使用一个函数,在没有开仓的时刻清除所有标志,否则EA将只开一次单,然后淡出,因为标志不会改变值
请给我一个例子。我只是在学习,还没有面对设置旗帜的任务。)
请给我一个例子。我只是在学习,还没有面对设置旗帜的任务。)
我自己不是专家,我只是告诉你我是如何解决这个问题的。 这不是一个小的代码,你要花更多的时间来弄清楚,而不是从头开始的想法)))。