问吧! - 页 62 1...555657585960616263646566676869...182 新评论 ryanklefas 2007.06.09 08:58 #611 niva: 我有一个二维的数据表,存储在一个二维数组中。我想做一些操作,比如根据该数据表的任何一列进行排序。 ArraySort()函数,在指令中,可以对数组的第一维进行排序。我看不出这对我有什么用。 对MetaTrader的数据表排序有什么建议吗? 我听说过的每个标准数组排序 函数都只对第一维进行排序。 你可能需要自己创建一个。 如果你还没有尝试过,也可以在网上查阅高级C++排序算法。 FreedomFX 2007.06.12 08:03 #612 使用多个账户的多个EA 你好。 我是Metatrader4(和外汇交易)的新手。我想知道的是,是否有可能在一个Metatrader4平台上使用相同存款规模的多个模拟账户测试多个EA,使用相同的货币对? 例如,我有五个不同的EA,每个分配到自己的模拟账户,每个账户1000美元,在一个平台上只使用GBPUSD,这样我可以在一段时间内比较他们的表现。 当我试图在我的StrategyBuilder - Metatrader - Demo中这样做时,我发现当我登录到下一个账户时,一个账户中的EA安装被结转,或者当在结转的账户中禁用一个EA来安装另一个EA时,第一个账户中的EA被禁用。 我意识到,在同一个账户中可以为不同的货币对安装不同的EA,但这并不能让我比较各种EA在同一货币对中的表现。 那么,我的行动方针是回溯测试吗?如果是的话,请提供一些关于如何开始的信息。 非常感谢任何帮助。 自由外汇 ryanklefas 2007.06.13 04:27 #613 自由外汇。 您的活动账户是由您终端中运行的任何EA管理的,所以我认为您不能做您所要求的事情。 然而,您可以在您的电脑上安装多个MT4副本,并为您的每个模拟账户 运行其中一个。 proverbs 2007.06.13 20:07 #614 Ryanklefas, 以下是根据当前价格行为(买入/卖出)输入挂单的 代码 我的问题。 我想让它根据每日中枢而不是当前价格输入挂单。 你能给我指出一些例子,让我试着弄清楚,或者有一些高低枢轴逻辑,我可以将其纳入这段代码,然后将其作为参考,而不是买入/卖出价? 谢谢你的帮助。 } OrderSend(Symbol(), OP_BUYSTOP, lots, Ask+open_long*Point, // Spread included slippage, Bid+(open_long-stop_long)*Point, Bid+(open_long+take_profit)*Point, NULL, magic, 0, FireBrick); OrderSend(Symbol(), OP_SELLSTOP, lots, Bid-open_short*Point, slippage, Ask-(open_short-stop_short)*Point, Ask-(open_short+take_profit)*Point, NULL, magic, 0, FireBrick); clear_to_send = false; } Ask! 如何编码? MT4 5位数平台 挂单问题 sbguy 2007.06.14 10:02 #615 noLagMACD 谁能告诉我这段代码有什么问题吗?我正试图将noLagMACD纳入Makegrid193中。它编译并运行,只是完全没有改变myWantLongs和myWantShorts的设置,所以没有订单产生。 如果(UseMACDNoLag) { int limit=Bars; myWantLongs = false; myWantShorts = false。 for(i=0; i<limit; i++) { FastEMABuffer=iMA(NULL,PERIOD_M5,emaFast,0,MODE_EMA,PRICE_CLOSE,i)。 SlowEMABuffer=iMA(NULL,PERIOD_M5,emaSlow,0,MODE_EMA,PRICE_CLOSE,i)。 } for(i=0; i<limit; i++) { EMA=iMAOnArray(FastEMABuffer,0,emaFast,0,MODE_EMA,i)。 ZeroLagEMAp=FastEMABuffer+FastEMABuffer-EMA。 EMA=iMAOnArray(SlowEMABuffer,0,emaSlow,0,MODE_EMA,i)。 ZeroLagEMAq=SlowEMABuffer+SlowEMABuffer-EMA。 MACDBuffer=ZeroLagEMAp - ZeroLagEMAq。 } 双重测试器1, 测试器2, 测试器3。 tester1 = MACDBuffer[0]; tester2 = MACDBuffer[1]; tester3 = MACDBuffer[2]。 if( (tester1 > 0.0) && ( tester2 <= 0.0) )// 交叉上升 { CloseAllPendingOrders()。 如果(CloseOpenPositions == true) { ClosePendingOrdersAndPositions()。 } 如果(wantLongs==true) { myWantLongs = true; } myWantShorts = false; } 如果( (tester1 = 0.0) )// 交叉下跌 { CloseAllPendingOrders()。 如果(CloseOpenPositions == true) { ClosePendingOrdersAndPositions()。 } 如果(wantShorts==true) { myWantShorts = true。 } myWantLongs = false; } if( (tester1 > 0.0) && (tester2 > 0.0) && (tester3 > 0.0) && (wantLongs=true) ) //远高于零 { myWantLongs = true。 } 如果( (tester1 < 0.0) && (tester2 < 0.0) && (tester3 < 0.0) && (wantShorts=true) ) //远低于零 { myWantShorts = true。 } } Ask! [存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. [Archive!] Any rookie question, sbguy 2007.06.14 15:44 #616 别担心 我发现了Time[]和iComplex,我之前发的那个乱七八糟的东西变成了这样。 如果(UseMACDNoLag) { if(newbar != Time[0]) { newbar=Time[0]; myWantLongs = false; myWantShorts = false; MACD_Main = iCustom(NULL, 0, "ZeroLagMACD", FastEMA, SlowEMA, SignalEMA, 0, 1); 如果(MACD_Main > 0) { 如果(!MACDup) { 如果(CloseOpenPositions == true) { ClosePendingOrdersAndPositions()。 } 否则 { CloseAllPendingOrders()。 } } MACDup = true; myWantShorts = false; 如果(wantLongs==true) { myWantLongs = true; } } 如果(MACD_Main < 0) { 如果(MACDup) { 如果(CloseOpenPositions == true) { ClosePendingOrdersAndPositions()。 } 否则 { CloseAllPendingOrders()。 } } MACDup = false; myWantLongs = false; 如果(wantShorts==true) { myWantShorts = true; } } } } 这真是太有趣了!!。如果我用这个EA得到了好的结果,我就把它贴出来。 Ask! Coding help 低和高 ryanklefas 2007.06.14 17:09 #617 proverbs: Ryanklefas,下面是根据当前价格行为(买入/卖出)输入挂单的代码。 我的问题。 我想让它根据每日中枢而不是当前价格输入挂单。 你能给我指出一些例子,让我试着弄清楚,或者有一些高低枢轴逻辑,我可以将其纳入这段代码,然后将其作为参考,而不是买入/卖出价? 谢谢你的帮助。 } OrderSend(Symbol(), OP_BUYSTOP, lots, Ask+open_long*Point, // Spread included slippage, Bid+(open_long-stop_long)*Point, Bid+(open_long+take_profit)*Point, NULL, magic, 0, FireBrick); OrderSend(Symbol(), OP_SELLSTOP, lots, Bid-open_short*Point, slippage, Ask-(open_short-stop_short)*Point, Ask-(open_short+take_profit)*Point, NULL, magic, 0, FireBrick); clear_to_send = false; } [/code] 每个枢轴点都是一个价格值。 而且,一个挂单必须放置在一个特定的价格上,在这个价格上它将变得活跃。 因此,当放置一个挂单时,将其进入价格设置为您选择的枢轴水平。 然后根据订单的进入价格设置您的止损和止盈。 [代码] } OrderSend(Symbol(), OP_BUYSTOP, 很多。 pivotLevelGoesHere, 滑点。 pivotLevelGoesHere-(stop_long*Point), pivotLevelGoesHere+(take_profit*Point)。 NULL。 魔法。 0, FireBrick)。 OrderSend(Symbol(), OP_SELLSTOP, 阄。 anotherPivotLevelGoesHere, 滑点。 anotherPivotLevelGoesHere+(stop_short*Point), AnotherPivotLevelGoesHere-(take_profit*Point)。 NULL。 魔法。 0, FireBrick)。 clear_to_send = false; } proverbs 2007.06.14 17:46 #618 我也是这么想的,谢谢你的确认。我不确定创建枢轴的逻辑,所以我下一步要做的就是这个。 谢谢你的时间。 DrPipper 2007.06.14 17:48 #619 埃利奥特波浪指标 有谁有一个能画出并标明每个波浪的埃利奥特波浪指标吗? 我见过EW振荡器和另一个,但它们没有做到这一点。也许甚至有一个能画出并标明每个模式的谐波模式指标? ryanklefas 2007.06.14 22:47 #620 proverbs: 我也是这么想的,所以谢谢你的确认。我不确定创建枢轴的逻辑,所以这是我接下来要做的。 谢谢你的时间。 有很多指标可以画出枢轴,你可以使用,见以下链接。 或者你甚至可以在你的EA中自己计算枢轴,但我认为这将是愚蠢的。 http://www.forexmt4.com/ 皮珀博士。 有没有人有一个能画出并标明每个波浪的埃利奥特波浪指标? 我见过EW震荡器和另一个,但它们没有做到这一点。 也许上面的链接也能帮助你? 1...555657585960616263646566676869...182 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我有一个二维的数据表,存储在一个二维数组中。我想做一些操作,比如根据该数据表的任何一列进行排序。
ArraySort()函数,在指令中,可以对数组的第一维进行排序。我看不出这对我有什么用。
对MetaTrader的数据表排序有什么建议吗?我听说过的每个标准数组排序 函数都只对第一维进行排序。 你可能需要自己创建一个。 如果你还没有尝试过,也可以在网上查阅高级C++排序算法。
使用多个账户的多个EA
你好。
我是Metatrader4(和外汇交易)的新手。我想知道的是,是否有可能在一个Metatrader4平台上使用相同存款规模的多个模拟账户测试多个EA,使用相同的货币对?
例如,我有五个不同的EA,每个分配到自己的模拟账户,每个账户1000美元,在一个平台上只使用GBPUSD,这样我可以在一段时间内比较他们的表现。
当我试图在我的StrategyBuilder - Metatrader - Demo中这样做时,我发现当我登录到下一个账户时,一个账户中的EA安装被结转,或者当在结转的账户中禁用一个EA来安装另一个EA时,第一个账户中的EA被禁用。
我意识到,在同一个账户中可以为不同的货币对安装不同的EA,但这并不能让我比较各种EA在同一货币对中的表现。
那么,我的行动方针是回溯测试吗?如果是的话,请提供一些关于如何开始的信息。
非常感谢任何帮助。
自由外汇
自由外汇。
您的活动账户是由您终端中运行的任何EA管理的,所以我认为您不能做您所要求的事情。 然而,您可以在您的电脑上安装多个MT4副本,并为您的每个模拟账户 运行其中一个。
Ryanklefas,
以下是根据当前价格行为(买入/卖出)输入挂单的 代码
我的问题。
我想让它根据每日中枢而不是当前价格输入挂单。
你能给我指出一些例子,让我试着弄清楚,或者有一些高低枢轴逻辑,我可以将其纳入这段代码,然后将其作为参考,而不是买入/卖出价?
谢谢你的帮助。
}
OrderSend(Symbol(),
OP_BUYSTOP,
lots,
Ask+open_long*Point, // Spread included
slippage,
Bid+(open_long-stop_long)*Point,
Bid+(open_long+take_profit)*Point,
NULL,
magic,
0,
FireBrick);
OrderSend(Symbol(),
OP_SELLSTOP,
lots,
Bid-open_short*Point,
slippage,
Ask-(open_short-stop_short)*Point,
Ask-(open_short+take_profit)*Point,
NULL,
magic,
0,
FireBrick);
clear_to_send = false;
}
noLagMACD
谁能告诉我这段代码有什么问题吗?我正试图将noLagMACD纳入Makegrid193中。它编译并运行,只是完全没有改变myWantLongs和myWantShorts的设置,所以没有订单产生。
如果(UseMACDNoLag)
{
int limit=Bars;
myWantLongs = false;
myWantShorts = false。
for(i=0; i<limit; i++)
{
FastEMABuffer=iMA(NULL,PERIOD_M5,emaFast,0,MODE_EMA,PRICE_CLOSE,i)。
SlowEMABuffer=iMA(NULL,PERIOD_M5,emaSlow,0,MODE_EMA,PRICE_CLOSE,i)。
}
for(i=0; i<limit; i++)
{
EMA=iMAOnArray(FastEMABuffer,0,emaFast,0,MODE_EMA,i)。
ZeroLagEMAp=FastEMABuffer+FastEMABuffer-EMA。
EMA=iMAOnArray(SlowEMABuffer,0,emaSlow,0,MODE_EMA,i)。
ZeroLagEMAq=SlowEMABuffer+SlowEMABuffer-EMA。
MACDBuffer=ZeroLagEMAp - ZeroLagEMAq。
}
双重测试器1, 测试器2, 测试器3。
tester1 = MACDBuffer[0];
tester2 = MACDBuffer[1];
tester3 = MACDBuffer[2]。
if( (tester1 > 0.0) && ( tester2 <= 0.0) )// 交叉上升
{
CloseAllPendingOrders()。
如果(CloseOpenPositions == true)
{
ClosePendingOrdersAndPositions()。
}
如果(wantLongs==true)
{
myWantLongs = true;
}
myWantShorts = false;
}
如果( (tester1 = 0.0) )// 交叉下跌
{
CloseAllPendingOrders()。
如果(CloseOpenPositions == true)
{
ClosePendingOrdersAndPositions()。
}
如果(wantShorts==true)
{
myWantShorts = true。
}
myWantLongs = false;
}
if( (tester1 > 0.0) && (tester2 > 0.0) && (tester3 > 0.0) && (wantLongs=true) ) //远高于零
{
myWantLongs = true。
}
如果( (tester1 < 0.0) && (tester2 < 0.0) && (tester3 < 0.0) && (wantShorts=true) ) //远低于零
{
myWantShorts = true。
}
}
别担心
我发现了Time[]和iComplex,我之前发的那个乱七八糟的东西变成了这样。
如果(UseMACDNoLag)
{
if(newbar != Time[0])
{
newbar=Time[0];
myWantLongs = false;
myWantShorts = false;
MACD_Main = iCustom(NULL, 0, "ZeroLagMACD", FastEMA, SlowEMA, SignalEMA, 0, 1);
如果(MACD_Main > 0)
{
如果(!MACDup)
{
如果(CloseOpenPositions == true)
{
ClosePendingOrdersAndPositions()。
}
否则
{
CloseAllPendingOrders()。
}
}
MACDup = true;
myWantShorts = false;
如果(wantLongs==true)
{
myWantLongs = true;
}
}
如果(MACD_Main < 0)
{
如果(MACDup)
{
如果(CloseOpenPositions == true)
{
ClosePendingOrdersAndPositions()。
}
否则
{
CloseAllPendingOrders()。
}
}
MACDup = false;
myWantLongs = false;
如果(wantShorts==true)
{
myWantShorts = true;
}
}
}
}
这真是太有趣了!!。如果我用这个EA得到了好的结果,我就把它贴出来。
Ryanklefas,
下面是根据当前价格行为(买入/卖出)输入挂单的代码。
我的问题。
我想让它根据每日中枢而不是当前价格输入挂单。
你能给我指出一些例子,让我试着弄清楚,或者有一些高低枢轴逻辑,我可以将其纳入这段代码,然后将其作为参考,而不是买入/卖出价?
谢谢你的帮助。
}
OrderSend(Symbol(),
OP_BUYSTOP,
lots,
Ask+open_long*Point, // Spread included
slippage,
Bid+(open_long-stop_long)*Point,
Bid+(open_long+take_profit)*Point,
NULL,
magic,
0,
FireBrick);
OrderSend(Symbol(),
OP_SELLSTOP,
lots,
Bid-open_short*Point,
slippage,
Ask-(open_short-stop_short)*Point,
Ask-(open_short+take_profit)*Point,
NULL,
magic,
0,
FireBrick);
clear_to_send = false;
}
[/code]每个枢轴点都是一个价格值。 而且,一个挂单必须放置在一个特定的价格上,在这个价格上它将变得活跃。 因此,当放置一个挂单时,将其进入价格设置为您选择的枢轴水平。 然后根据订单的进入价格设置您的止损和止盈。
[代码]
}
OrderSend(Symbol(),
OP_BUYSTOP,
很多。
pivotLevelGoesHere,
滑点。
pivotLevelGoesHere-(stop_long*Point),
pivotLevelGoesHere+(take_profit*Point)。
NULL。
魔法。
0,
FireBrick)。
OrderSend(Symbol(),
OP_SELLSTOP,
阄。
anotherPivotLevelGoesHere,
滑点。
anotherPivotLevelGoesHere+(stop_short*Point),
AnotherPivotLevelGoesHere-(take_profit*Point)。
NULL。
魔法。
0,
FireBrick)。
clear_to_send = false;
}
我也是这么想的,谢谢你的确认。我不确定创建枢轴的逻辑,所以我下一步要做的就是这个。
谢谢你的时间。
埃利奥特波浪指标
有谁有一个能画出并标明每个波浪的埃利奥特波浪指标吗? 我见过EW振荡器和另一个,但它们没有做到这一点。也许甚至有一个能画出并标明每个模式的谐波模式指标?
我也是这么想的,所以谢谢你的确认。我不确定创建枢轴的逻辑,所以这是我接下来要做的。 谢谢你的时间。
有很多指标可以画出枢轴,你可以使用,见以下链接。 或者你甚至可以在你的EA中自己计算枢轴,但我认为这将是愚蠢的。![](https://c.mql5.com/forextsd/smiles/regular_smile.png)
http://www.forexmt4.com/
有没有人有一个能画出并标明每个波浪的埃利奥特波浪指标? 我见过EW震荡器和另一个,但它们没有做到这一点。
也许上面的链接也能帮助你?