如何编码? - 页 336 1...329330331332333334335336337338339340341342343...347 新评论 Mladen Rakic 2015.05.20 14:23 #3351 tkuan77: 嗨,mladen,很遗憾,我刚刚又重试了一次,还是没有成功。 是否有其他方法可以让我根据特定的时间来关闭我的交易? 请注意 睿安 我使用了这个代码。 extern bool UseCurrSymbol = false; int init() { return(0); } int deinit() { return(0); } void start(void) { bool result; if(OrdersTotal()>0) { if (TimeCurrent()>= StrToTime("07:00:00")) for (int i=OrdersTotal()-1; i>=0; i--) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) if (!UseCurrSymbol || OrderSymbol()==Symbol()) { if (OrderType()==OP_BUY) { double pBid=MarketInfo(OrderSymbol(),MODE_BID); result = OrderClose(OrderTicket(),OrderLots(),pBid,3,Blue); } if (OrderType()==OP_SELL) { double pAsk=MarketInfo(OrderSymbol(),MODE_ASK); result = OrderClose(OrderTicket(),OrderLots(),pAsk,3,Red); } } } } return; } 来测试,它关闭了订单(见例子)。 附加的文件: test_closed.gif 63 kb How to code? 编码帮助 火鸟v63G tkuan77 2015.05.20 14:30 #3352 mladen: 我使用了这段代码。extern bool UseCurrSymbol = false; int init() { return(0); } int deinit() { return(0); } void start(void) { bool result; if(OrdersTotal()>0) { if (TimeCurrent()>= StrToTime("07:00:00")) for (int i=OrdersTotal()-1; i>=0; i--) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) if (!UseCurrSymbol || OrderSymbol()==Symbol()) { if (OrderType()==OP_BUY) { double pBid=MarketInfo(OrderSymbol(),MODE_BID); result = OrderClose(OrderTicket(),OrderLots(),pBid,3,Blue); } if (OrderType()==OP_SELL) { double pAsk=MarketInfo(OrderSymbol(),MODE_ASK); result = OrderClose(OrderTicket(),OrderLots(),pAsk,3,Red); } } } } return; } 为了测试,它关闭了订单(见例子)。 嗨,mladen,谢谢。这个问题在我这边已经解决了。只是想问一下,你能不能给我解释一下你编码中的这几行字的目的是什么? 外部 bool UseCurrSymbol = false; and 如果(!UseCurrSymbol || OrderSymbol()==Symbol()) 请注意 阮先生 Mladen Rakic 2015.05.20 14:40 #3353 tkuan77: 我的问题已经解决了。只是想问一下,你能向我解释一下你的代码中这几行的目的是什么吗?外部 bool UseCurrSymbol = false; 和 如果(!UseCurrSymbol || OrderSymbol()==Symbol()) 注意 阮先生 你使用了UseCurrSymbol变量和你代码中的那一行 我不得不制作这个变量,以便代码中使用与你的代码相同的变量。 tkuan77 2015.05.20 14:49 #3354 mladen: 你使用了UseCurrSymbol变量,在你的代码中的那一行,我不得不让它成为变量,以便代码使用与你的代码相同的变量。 嗨,mladen,对不起,我从你之前提供的资料中得到了这部分的代码。 我的意思是,为什么我们需要把UseCurrSymbol设置为false,第二行的目的是什么 -->if (!UseCurrSymbol || OrderSymbol()==Symbol()) Mladen Rakic 2015.05.20 15:12 #3355 tkuan77: 我的意思是,为什么我们需要把UseCurrSymbol设置为false,第二行的目的是什么 -->if (!UseCurrSymbol || OrderSymbol()==Symbol() 我们不需要把它设置为假 如果你把它设置为 "true",那么只有当前符号会被检查到 订单。所以它允许你选择你想处理的订单。 at120 2015.06.02 09:00 #3356 大家好! 我有以下问题。 我想要一个icustom indi的值,例如iCustom(NULL,0, "MACD",12,26,9,0,i)在一个子函数中使用,例如。 double Mom(const double& series[], int period, int totcount, int index) { if (totcount<1 || period<1) return (EMPTY_VALUE); if (indextotcount-1) return (EMPTY_VALUE); return (series-series); } 以获得 "iCustom(NULL,0, "MACD",12,26,9,0,i) "的动量...... 当我用Mom(High,22,Bars,i)正常调用它时 这是在工作,但当我使用自定义indi而不是 "High "时,它当然就不工作了。 所以我的问题是,我怎样才能实现这一点,使代码工作? 感谢任何帮助! 再见,AT How to code? Is it possible to Display indicator on multiframes Mladen Rakic 2015.06.02 09:43 #3357 at120: 嗨,伙计们 我有以下问题。我想要一个icustom indi的值,例如iCustom(NULL,0, "MACD",12,26,9,0,i)在一个子函数中使用,例如。 double Mom(const double& series[], int period, int totcount, int index) { if (totcount<1 || period<1) return (EMPTY_VALUE); if (indextotcount-1) return (EMPTY_VALUE); return (series-series); } 以获得 "iCustom(NULL,0, "MACD",12,26,9,0,i) "的动量......当我用Mom(High,22,Bars,i)正常调用它时这是在工作,但当我使用自定义indi而不是 "High "时,它当然就不工作了。所以我的问题是,我怎样才能实现这一点,使代码工作?感谢任何帮助! 再见,AT at120 你在指标文件夹中是否有名为 "macd "的指标(我不是指内置的macd,而是一些自定义的macd)?如果有,请检查参数 是否正确 at120 2015.06.02 12:03 #3358 嗨,Mladen! 谢谢你的快速回放! 对不起,MACD是个不好的例子,可以用其他的例子,如自定义MACD或类似的东西。 我通过额外窗口和测试indi/output检查了输出,以设置正确的设置。 以确保 "iCustom(NULL,0, "myIndi",0,i) "有正确的参数。当然,它是被编译的,正确的文件夹,等等...。 我总是得到这样的错误(当我使用一个变量时)--例如 double mom1 = iCustom(NULL,0, "myIndi",0,i); -> mom(mom1,Bars,20,i) -- "mom" --参数对话不允许,或者当我直接使用它时 --> mom( iCustom(NULL,0, "myIndi",0,i),Bars,20,i) 错误:iCustom - 参数以参考形式传递,预计为变量 谢谢你的帮助和信息! 再见,AT Mladen Rakic 2015.06.02 12:55 #3359 at120: 嗨,Mladen!谢谢你的快速回放! 对不起,MACD是个不好的例子,可以用其他的例子,如自定义MACD或类似的东西。 我通过额外窗口和测试indi/output检查了输出,以设置正确的设置。 以确保 "iCustom(NULL,0, "myIndi",0,i) "有正确的参数。当然,它是被编译的,正确的文件夹,等等...。 我总是得到这样的错误(当我使用一个变量时)--例如 double mom1 = iCustom(NULL,0, "myIndi",0,i);-> mom(mom1,Bars,20,i) -- "mom" --参数对话不允许,或者当我直接使用它时 --> mom( iCustom(NULL,0, "myIndi",0,i),Bars,20,i) 错误:iCustom - 参数以参考形式传递,预计为变量 谢谢你的帮助和信息! 再见,AT 如果你使用简单的iCustom()调用,那么错误可能只发生在参数上。 你不能使用iCustom()作为mom()函数的参数(查看mom函数标题,你会看到mom()函数接受什么参数和什么类型的参数)。iCustom()的结果被定义为 "double"--它不能接受通过引用传递的数组的步伐。也可以看看这个主题:https://www.mql5.com/en/forum/173108- 也许有帮助 at120 2015.06.03 06:49 #3360 嗨,Mladen! 我认为我的iCustom的调用是正确的,因为在测试和正常情况下(导出 数据或作为indi使用) 到目前为止工作正常。我想问题出在你提到的双数/数组的值上。 当我现在使用一个 double mom1[]。 mom1 = iCustom(NULL,0, "myIndi",0,i)。 和比一个-> mom(mom1,Bars,20,i)。 --> "mom" --参数对话不允许 我怎样才能写对呢? 非常感谢,再见,AT 1...329330331332333334335336337338339340341342343...347 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
嗨,mladen,很遗憾,我刚刚又重试了一次,还是没有成功。
是否有其他方法可以让我根据特定的时间来关闭我的交易?
请注意
睿安我使用了这个代码。
int init() { return(0); }
int deinit() { return(0); }
void start(void)
{
bool result;
if(OrdersTotal()>0)
{
if (TimeCurrent()>= StrToTime("07:00:00"))
for (int i=OrdersTotal()-1; i>=0; i--)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
if (!UseCurrSymbol || OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
double pBid=MarketInfo(OrderSymbol(),MODE_BID);
result = OrderClose(OrderTicket(),OrderLots(),pBid,3,Blue);
}
if (OrderType()==OP_SELL)
{
double pAsk=MarketInfo(OrderSymbol(),MODE_ASK);
result = OrderClose(OrderTicket(),OrderLots(),pAsk,3,Red);
}
}
}
}
return;
}
来测试,它关闭了订单(见例子)。
我使用了这段代码。
int init() { return(0); }
int deinit() { return(0); }
void start(void)
{
bool result;
if(OrdersTotal()>0)
{
if (TimeCurrent()>= StrToTime("07:00:00"))
for (int i=OrdersTotal()-1; i>=0; i--)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
if (!UseCurrSymbol || OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
double pBid=MarketInfo(OrderSymbol(),MODE_BID);
result = OrderClose(OrderTicket(),OrderLots(),pBid,3,Blue);
}
if (OrderType()==OP_SELL)
{
double pAsk=MarketInfo(OrderSymbol(),MODE_ASK);
result = OrderClose(OrderTicket(),OrderLots(),pAsk,3,Red);
}
}
}
}
return;
}
为了测试,它关闭了订单(见例子)。
嗨,mladen,谢谢。这个问题在我这边已经解决了。只是想问一下,你能不能给我解释一下你编码中的这几行字的目的是什么?
外部 bool UseCurrSymbol = false; and
如果(!UseCurrSymbol || OrderSymbol()==Symbol())
请注意
阮先生
我的问题已经解决了。只是想问一下,你能向我解释一下你的代码中这几行的目的是什么吗?
外部 bool UseCurrSymbol = false; 和
如果(!UseCurrSymbol || OrderSymbol()==Symbol())
注意
阮先生你使用了UseCurrSymbol变量和你代码中的那一行
我不得不制作这个变量,以便代码中使用与你的代码相同的变量。
你使用了UseCurrSymbol变量,在你的代码中的那一行,我不得不让它成为变量,以便代码使用与你的代码相同的变量。
嗨,mladen,对不起,我从你之前提供的资料中得到了这部分的代码。
我的意思是,为什么我们需要把UseCurrSymbol设置为false,第二行的目的是什么 -->if (!UseCurrSymbol || OrderSymbol()==Symbol())
我的意思是,为什么我们需要把UseCurrSymbol设置为false,第二行的目的是什么 -->if (!UseCurrSymbol || OrderSymbol()==Symbol()
我们不需要把它设置为假
如果你把它设置为 "true",那么只有当前符号会被检查到 订单。所以它允许你选择你想处理的订单。
大家好!
我有以下问题。
我想要一个icustom indi的值,例如iCustom(NULL,0, "MACD",12,26,9,0,i)在一个子函数中使用,例如。
double Mom(const double& series[], int period, int totcount, int index)
{
if (totcount<1 || period<1) return (EMPTY_VALUE);
if (indextotcount-1) return (EMPTY_VALUE);
return (series-series);
}
以获得 "iCustom(NULL,0, "MACD",12,26,9,0,i) "的动量......
当我用Mom(High,22,Bars,i)正常调用它时
这是在工作,但当我使用自定义indi而不是 "High "时,它当然就不工作了。
所以我的问题是,我怎样才能实现这一点,使代码工作?
感谢任何帮助!
再见,AT
嗨,伙计们
我有以下问题。
我想要一个icustom indi的值,例如iCustom(NULL,0, "MACD",12,26,9,0,i)在一个子函数中使用,例如。
double Mom(const double& series[], int period, int totcount, int index)
{
if (totcount<1 || period<1) return (EMPTY_VALUE);
if (indextotcount-1) return (EMPTY_VALUE);
return (series-series);
}
以获得 "iCustom(NULL,0, "MACD",12,26,9,0,i) "的动量......
当我用Mom(High,22,Bars,i)正常调用它时
这是在工作,但当我使用自定义indi而不是 "High "时,它当然就不工作了。
所以我的问题是,我怎样才能实现这一点,使代码工作?
感谢任何帮助!
再见,ATat120
你在指标文件夹中是否有名为 "macd "的指标(我不是指内置的macd,而是一些自定义的macd)?如果有,请检查参数 是否正确
嗨,Mladen!
谢谢你的快速回放!
对不起,MACD是个不好的例子,可以用其他的例子,如自定义MACD或类似的东西。
我通过额外窗口和测试indi/output检查了输出,以设置正确的设置。
以确保 "iCustom(NULL,0, "myIndi",0,i) "有正确的参数。当然,它是被编译的,正确的文件夹,等等...。
我总是得到这样的错误(当我使用一个变量时)--例如
double mom1 = iCustom(NULL,0, "myIndi",0,i); -> mom(mom1,Bars,20,i)
-- "mom" --参数对话不允许,或者当我直接使用它时 -->
mom( iCustom(NULL,0, "myIndi",0,i),Bars,20,i)
错误:iCustom - 参数以参考形式传递,预计为变量
谢谢你的帮助和信息!
再见,AT
嗨,Mladen!
谢谢你的快速回放!
对不起,MACD是个不好的例子,可以用其他的例子,如自定义MACD或类似的东西。
我通过额外窗口和测试indi/output检查了输出,以设置正确的设置。
以确保 "iCustom(NULL,0, "myIndi",0,i) "有正确的参数。当然,它是被编译的,正确的文件夹,等等...。
我总是得到这样的错误(当我使用一个变量时)--例如
double mom1 = iCustom(NULL,0, "myIndi",0,i);-> mom(mom1,Bars,20,i)
-- "mom" --参数对话不允许,或者当我直接使用它时 -->
mom( iCustom(NULL,0, "myIndi",0,i),Bars,20,i)
错误:iCustom - 参数以参考形式传递,预计为变量
谢谢你的帮助和信息!
再见,AT如果你使用简单的iCustom()调用,那么错误可能只发生在参数上。
你不能使用iCustom()作为mom()函数的参数(查看mom函数标题,你会看到mom()函数接受什么参数和什么类型的参数)。iCustom()的结果被定义为 "double"--它不能接受通过引用传递的数组的步伐。也可以看看这个主题:https://www.mql5.com/en/forum/173108- 也许有帮助
嗨,Mladen!
我认为我的iCustom的调用是正确的,因为在测试和正常情况下(导出 数据或作为indi使用)
到目前为止工作正常。我想问题出在你提到的双数/数组的值上。
当我现在使用一个
double mom1[]。
mom1 = iCustom(NULL,0, "myIndi",0,i)。
和比一个-> mom(mom1,Bars,20,i)。
--> "mom" --参数对话不允许
我怎样才能写对呢?
非常感谢,再见,AT