[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 268 1...261262263264265266267268269270271272273274275...537 新评论 [删除] 2011.03.21 20:29 #2671 extern string AlliesO1 = "GBPUSD"; - валюта string AlliesO[5]; - массив в котором хранятся валюты. Так я проверяю нужно ли добавлять валюту в массив. (Изначально вместо валют нули, всего валют 5) if (StringLen (AlliesO1)>2) { CountAlliesO++; AlliesO [0] = AlliesO1; } Потом в цикле перебираю валюты и на каждой валюте открываю ордер. for (int i=0;i<CountAlliesO;i++) { l_ticket_4 = OrderSend(AlliesO[i], OP_BUY, Lots, NormalizeDouble(Ask, Digits), l_slippage_8, iif(StopLoss == 0.0, 0, NormalizeDouble(Ask - StopLoss / MathPow(10, Digits), Digits)), iif(TakeProfit == 0.0, 0, NormalizeDouble(Ask + TakeProfit / MathPow(10, Digits), Digits)), 0, Magic, 0, CLR_NONE); Print ("Ticket " + Allies[i] + ": " + l_ticket_4); } 这就是它的输出。 22:05:25 RSI_Valut_Test2 EURUSD,H1: CountAlliesO: 2 22:05:25 RSI_Valut_Test2 EURUSD,H1: CountEnemyO: 2 22:05:25 RSI_Valut_Test2 EURUSD,H1: Allies: GBPUSD // - 在循环中打印AlliesO[i]。 22:05:25 RSI_Valut_Test2 EURUSD,H1:盟友:GBPUSD 22:05:25 RSI_Valut_Test2 EURUSD,H1:敌人:USDCHF 22:05:25 RSI_Valut_Test2 EURUSD,H1:敌人:USDCHF 22:05:25 RSI_Valut_Test2 EURUSD,H1: Ticket USDCHF: -1 22:05:25 RSI_Valut_Test2:OrderSend函数 的符号名称必须是一个字符串 一般来说,某某,我不能给所有的代码,因为要求不要分发......好吧,有几台打印机被扔在那里,输出这些数据......为什么它说它不是一个字符串? 如果它被声明为一个字符串? 请帮助我,提前感谢。 [Archive!] Any rookie question, [警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 我将写一个免费的mql4顾问 [删除] 2011.03.21 20:31 #2672 大家晚上好。请教如何编写一个适当的函数,在几个柱子打开后关闭订单,以及如何优化这个数字。 [删除] 2011.03.21 20:50 #2673 CountBars -条形的数量。 票--订单号。 CloseAfterSomeBar (int CountBars, int Ticket) { OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES) datetime date = OrderOpenTime(); int BarShift = iBarShift (Symbol(), 0, date, false); if (CountBars>=BarShift) { if (OrderType() = OP_BUY) OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE); else OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE); } } 在每个刻度上运行,不确定条数,可能是-1,也可能是+1,因为我不知道偏移量是如何计算的......嗯,在M1上检查并不难...... 是这样的吗? [Archive!] Any rookie question, 编码帮助 [警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 [删除] 2011.03.21 20:56 #2674 PODLIY16: CountBars - 条形的数量。 票--订单号。 CloseAfterSomeBar (int CountBars, int Ticket) { OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES) datetime date = OrderOpenTime(); int BarShift = iBarShift (Symbol(), 0, date, false); if (CountBars>=BarShift) { if (OrderType() = OP_BUY) OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE); else OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE); } } 在每个刻度上运行,不确定条数,可能是-1,也可能是+1,因为我不知道偏移量是如何计算的......嗯,在M1上检查并不难... 是这样吗? [删除] 2011.03.21 20:59 #2675 isaev-av: 我想是的,我不是程序员,我现在就试试,最主要的是让它在TF上运行。 [删除] 2011.03.21 21:12 #2676 void CloseAfterSomeBar (int CountBars, int Ticket) { OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES); datetime date = OrderOpenTime(); int BarShift = iBarShift (Symbol(), 0, date, false); if (BarShift>=CountBars) { if (OrderType() == OP_BUY) OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE); else OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE); } } 这个是正确的,它在正确的条形图打开后立即关闭订单,例如在M1上我刚试过,订单在第九分钟打开,在11:01关闭。 [Archive!] Any rookie question, 编码帮助 [警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 Григорий 2011.03.21 21:15 #2677 你能告诉我如何在RSI或Stohastic指标上叠加MA,也就是说,不是从图表上而是从指标上获取MA? [删除] 2011.03.21 21:17 #2678 这是不可行的。也许有人可以纠正它。大家晚上好。请教如何编写一个适当的函数,在几个柱子打开后关闭订单,以及如何优化这个数字。 附加的文件: movingmaverage.mq4 5 kb [删除] 2011.03.21 21:29 #2679 用2个新的变量试试吧。 extern bool IfTrueThenCountBarWork = false; // - 如果是假的,这个函数将不工作,要工作就必须设置为真。 外部inttern CountBar = 0; // - 关闭的条数。我在上面描述了如何计算小节。 我希望我已经做了一些有用的事情。 附加的文件: movingmaverage_1.mq4 6 kb [删除] 2011.03.21 21:31 #2680 PODLIY16: 用2个新的变量试试吧。 extern bool IfTrueThenCountBarWork = false; // - 如果你设置为false,这个函数将不工作,你应该设置为true,它才能工作。 extern int CountBar = 0; // - 关闭的条数。如何计算条数,我在上面写过。 我希望我在某些方面帮助了你。 谢谢你! 1...261262263264265266267268269270271272273274275...537 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
extern string AlliesO1 = "GBPUSD"; - валюта
string AlliesO[5]; - массив в котором хранятся валюты.
Так я проверяю нужно ли добавлять валюту в массив. (Изначально вместо валют нули, всего валют 5)
if (StringLen (AlliesO1)>2)
{
CountAlliesO++;
AlliesO [0] = AlliesO1;
}
Потом в цикле перебираю валюты и на каждой валюте открываю ордер.
for (int i=0;i<CountAlliesO;i++)
{
l_ticket_4 = OrderSend(AlliesO[i], OP_BUY, Lots, NormalizeDouble(Ask, Digits), l_slippage_8, iif(StopLoss == 0.0, 0, NormalizeDouble(Ask - StopLoss / MathPow(10, Digits), Digits)), iif(TakeProfit == 0.0, 0, NormalizeDouble(Ask +
TakeProfit / MathPow(10, Digits), Digits)), 0, Magic, 0, CLR_NONE);
Print ("Ticket " + Allies[i] + ": " + l_ticket_4);
}
这就是它的输出。
22:05:25 RSI_Valut_Test2 EURUSD,H1: CountAlliesO: 222:05:25 RSI_Valut_Test2 EURUSD,H1: CountEnemyO: 2
22:05:25 RSI_Valut_Test2 EURUSD,H1: Allies: GBPUSD // - 在循环中打印AlliesO[i]。
22:05:25 RSI_Valut_Test2 EURUSD,H1:盟友:GBPUSD
22:05:25 RSI_Valut_Test2 EURUSD,H1:敌人:USDCHF
22:05:25 RSI_Valut_Test2 EURUSD,H1:敌人:USDCHF
22:05:25 RSI_Valut_Test2 EURUSD,H1: Ticket USDCHF: -1
22:05:25 RSI_Valut_Test2:OrderSend函数 的符号名称必须是一个字符串
一般来说,某某,我不能给所有的代码,因为要求不要分发......好吧,有几台打印机被扔在那里,输出这些数据......为什么它说它不是一个字符串? 如果它被声明为一个字符串?
请帮助我,提前感谢。
大家晚上好。请教如何编写一个适当的函数,在几个柱子打开后关闭订单,以及如何优化这个数字。
CountBars -条形的数量。
票--订单号。
CloseAfterSomeBar (int CountBars, int Ticket)
{OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES)
datetime date = OrderOpenTime();
int BarShift = iBarShift (Symbol(), 0, date, false);
if (CountBars>=BarShift)
{
if (OrderType() = OP_BUY)
OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE);
else
OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE);
}
}
在每个刻度上运行,不确定条数,可能是-1,也可能是+1,因为我不知道偏移量是如何计算的......嗯,在M1上检查并不难......
是这样的吗?
CountBars - 条形的数量。
票--订单号。
CloseAfterSomeBar (int CountBars, int Ticket)
{OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES)
datetime date = OrderOpenTime();
int BarShift = iBarShift (Symbol(), 0, date, false);
if (CountBars>=BarShift)
{
if (OrderType() = OP_BUY)
OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE);
else
OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE);
}
}
在每个刻度上运行,不确定条数,可能是-1,也可能是+1,因为我不知道偏移量是如何计算的......嗯,在M1上检查并不难...
是这样吗?
我想是的,我不是程序员,我现在就试试,最主要的是让它在TF上运行。
{
OrderSelect (Ticket, SELECT_BY_TICKET, MODE_TRADES);
datetime date = OrderOpenTime();
int BarShift = iBarShift (Symbol(), 0, date, false);
if (BarShift>=CountBars)
{
if (OrderType() == OP_BUY)
OrderClose(Ticket,OrderLots(),Bid, (Ask - Bid) / Point, CLR_NONE);
else
OrderClose(Ticket,OrderLots(),Ask, (Ask - Bid) / Point, CLR_NONE);
}
}
这个是正确的,它在正确的条形图打开后立即关闭订单,例如在M1上我刚试过,订单在第九分钟打开,在11:01关闭。
用2个新的变量试试吧。
extern bool IfTrueThenCountBarWork = false; // - 如果是假的,这个函数将不工作,要工作就必须设置为真。
外部inttern CountBar = 0; // - 关闭的条数。我在上面描述了如何计算小节。
我希望我已经做了一些有用的事情。
用2个新的变量试试吧。
extern bool IfTrueThenCountBarWork = false; // - 如果你设置为false,这个函数将不工作,你应该设置为true,它才能工作。
extern int CountBar = 0; // - 关闭的条数。如何计算条数,我在上面写过。
我希望我在某些方面帮助了你。
谢谢你!