问吧! - 页 62

 
niva:
我有一个二维的数据表,存储在一个二维数组中。我想做一些操作,比如根据该数据表的任何一列进行排序。

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得到了好的结果,我就把它贴出来。

 
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;

}

 

我也是这么想的,谢谢你的确认。我不确定创建枢轴的逻辑,所以我下一步要做的就是这个。

谢谢你的时间。

 

埃利奥特波浪指标

有谁有一个能画出并标明每个波浪的埃利奥特波浪指标吗? 我见过EW振荡器和另一个,但它们没有做到这一点。也许甚至有一个能画出并标明每个模式的谐波模式指标?

 
proverbs:
我也是这么想的,所以谢谢你的确认。我不确定创建枢轴的逻辑,所以这是我接下来要做的。 谢谢你的时间。

有很多指标可以画出枢轴,你可以使用,见以下链接。 或者你甚至可以在你的EA中自己计算枢轴,但我认为这将是愚蠢的。

http://www.forexmt4.com/

皮珀博士。
有没有人有一个能画出并标明每个波浪的埃利奥特波浪指标? 我见过EW震荡器和另一个,但它们没有做到这一点。

也许上面的链接也能帮助你?