问吧! - 页 15

 
Aaragorn:
我想学习如何使用这个工具。http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/

我做了一个EA并编译了它,得到了这6个错误......

'.'- 预计初始化 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (16, 22)

'1' - 逗号或分号预期 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (16, 23)

'Lots' - 变量未定义 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (179, 44)

'Lots' - 未定义的变量 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (187, 47)

'Lots' - 未定义的变量 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (206, 44)

'Lots' - 变量未定义 C:\Program Files\Interbank FX Trader 4\experts\macdstochma5m.mq4 (214, 48)

谁能帮助我纠正这些错误,我刚刚学会如何编译,但我不知道如何编码。

以下是代码...

//+------------------------------------------------------------------+

//|这个MQL是由专家顾问生成器生成的。

//|http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/|

//| |

//|在任何情况下,作者都不会对任何损失负责。 |

//| 使用风险自负。 |

//| |

//| 请不要删除此标题。 |

//+------------------------------------------------------------------+

#property copyright "Expert Advisor Builder"

#property link "http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/"

外部int MagicNumber = 0;

extern bool SignalMail = False;

extern bool EachTickMode = False;

外置双倍数 Lots = .1;

extern int Slippage = 3;

extern bool StopLossMode = True;

外置 int StopLoss = 12;

外部 bool TakeProfitMode = True;

外来的int TakeProfit = 90;

外部 bool TrailingStopMode = True;

外置 int TrailingStop = 12;

#define SIGNAL_NONE 0

#define SIGNAL_BUY 1

#define SIGNAL_SELL 2

#define SIGNAL_CLOSEBUY 3

#define SIGNAL_CLOSESELL 4

int BarCount;

int Current;

bool TickCheck = False;

//+------------------------------------------------------------------+

//| 专家初始化函数 |

//+------------------------------------------------------------------+

int init() {

BarCount = Bars;

如果(EachTickMode)Current = 0;否则Current = 1。

return(0);

}

//+------------------------------------------------------------------+

//| 专家去初始化功能|

//+------------------------------------------------------------------+

int deinit() {

return(0);

}

//+------------------------------------------------------------------+

//| 专家启动功能|

//+------------------------------------------------------------------+

int start() {

int Order = SIGNAL_NONE;

int Total, Ticket;

double StopLossLevel, TakeProfitLevel;

如果(EachTickMode && Bars != BarCount) TickCheck = False;

Total = OrdersTotal();

订单 = SIGNAL_NONE;

//+------------------------------------------------------------------+

//| 变量开始 |

//+------------------------------------------------------------------+

double Buy1_1 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 2, 1, 0, 1, Current + 0);

double Buy1_2 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 5, 1, 0, 1, Current + 0);

double Buy2_1 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 9, 1, 0, 1, Current + 0);

double Buy2_2 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 9, 1, 0, 1, Current + 1);

double Buy3_1 = iMACD("EURUSD", PERIOD_M1, 4, 9, 7, PRICE_CLOSE, MODE_SIGNAL, Current + 0);

double Buy3_2 = iMACD("EURUSD", PERIOD_M1, 4, 9, 7, PRICE_CLOSE, MODE_SIGNAL, Current + 1);

double Buy4_1 = iMA("EURUSD", PERIOD_M1, 2, 0, MODE_EMA, PRICE_CLOSE, Current + 0);

double Buy4_2 = iMA("EURUSD", PERIOD_M1, 5, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double Sell1_1 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 2, 1, 0, 1, Current + 0);

double Sell1_2 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 5, 1, 0, 1, Current + 0);

double Sell2_1 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 9, 1, 0, 1, Current + 0);

double Sell2_2 = iCustom("EURUSD", PERIOD_M1, "StepMA_Stoch", 9, 1, 0, 1, Current + 1);

double Sell3_1 = iMACD("EURUSD", PERIOD_M1, 4, 9, 7, PRICE_CLOSE, MODE_SIGNAL, Current + 0);

double Sell3_2 = iMACD("EURUSD", PERIOD_M1, 4, 9, 7, PRICE_CLOSE, MODE_SIGNAL, Current + 1);

double Sell4_1 = iMA("EURUSD", PERIOD_M1, 2, 0, MODE_EMA, PRICE_CLOSE, Current + 0);

double Sell4_2 = iMA("EURUSD", PERIOD_M1, 5, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double CloseBuy1_1 = iMA("EURUSD", PERIOD_M1, 2, 0, MODE_SMA, PRICE_CLOSE, Current+0);

double CloseBuy1_2 = iMA("EURUSD", PERIOD_M1, 5, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double CloseSell1_1 = iMA("EURUSD", PERIOD_M1, 2, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double CloseSell1_2 = iMA("EURUSD", PERIOD_M1, 5, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

//+------------------------------------------------------------------+

//|变量结束

//+------------------------------------------------------------------+

//检查位置

bool IsTrade = False;

for (int i = 0; i < Total; i ++) {

OrderSelect(i, SELECT_BY_POS, MODE_TRADES)。

如果(OrderType() <= OP_SELL && OrderSymbol() == Symbol() ) {

IsTrade = True。

如果(OrderType() == OP_BUY){

//关闭

//+------------------------------------------------------------------+

//| 信号开始(退出买入)|

//+------------------------------------------------------------------+

如果(CloseBuy1_1 < CloseBuy1_2) Order = SIGNAL_CLOSEBUY;

//+------------------------------------------------------------------+

//| 信号结束(退出买入) |

//+------------------------------------------------------------------+

如果(Order == SIGNAL_CLOSEBUY && ((EachTickMode && !TickCheck) || (! EachTickMode && (Bars != BarCount))))){

OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, MediumSeaGreen)。

if (SignalMail) SendMail("[信号提示]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Close Buy");

if (!EachTickMode) BarCount = Bars;

IsTrade = False。

继续。

}

//拖曳止损

if(TrailingStopMode && TrailingStop > 0) {

if(Bid - OrderOpenPrice() > Point * TrailingStop) {

如果(OrderStopLoss() < Bid - Point * TrailingStop) {

OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, MediumSeaGreen) 。

if (!EachTickMode) BarCount = Bars;

继续。

}

}

}

} else {

//关闭

..... 在下一个帖子中继续

嗨,Aaragorn...

尝试将Lots=.1改为Lots=0.1

 

哇,一个'0'能带来多大的变化啊!

它现在没有显示错误,在导航窗口中,它现在是彩色的,而不是灰暗的....。

好了,接下来我试图用测试器进行回测,但没有显示任何结果。

报告是所有的零,没有图表,什么都没有。

日志标签中的信息是...

2006.06.13 11:58:15 macdstochma5m 输入。MagicNumber=0; Lots=0.1; Slippage=3; StopLoss=12; TakeProfit=90; TrailingStop=12;

 

CCI零线交叉

我一直在多个网站上搜索这个问题,当然是在谷歌上搜索,同时也在论坛上自己搜索了5个多小时。

有人能不能发布一个CCI的指标,当零线被越过时,有声音提示。

非常简单,而且在哪里都找不到......

谢谢。

请有人贴出它的完整代码,而不是随便说一些话,假设我应该知道把那一点代码放在哪里,或者如何把它与我已有的代码交织在一起,使它真正发挥作用。 如果你愿意,你也可以让它在上面的图表上有箭头,但这并不是主要的。 只要能在家里乱转或玩游戏,因为有音频提示,而不必每天盯着图表看12小时,对我来说就足够了。

谢谢。

 

继续上一篇文章...

删除

 

我有两个简单的问题,我想...

我怎样才能使黑天鹅 蜡烛的厚度默认为5,而不是3? 每当我提出一个新的图表时,它们又回到了3。

另外,我怎样才能根据RSI指标的值在蜡烛上方或下方做一个标记?

我了解一些编程,但不知道其中的语法......所以要装作我什么都不知道。

非常感谢......如果我发现了什么,我会把它贴出来。

PS 专家顾问生成器很好,是否也有指标生成器? 这将是很好的。

 

大家好...

我做了一个EA,交易两种不同的货币。我希望有一个功能,在两种货币都达到X数额的利润时关闭所有交易。

我已经尝试了这个例子。

http://www.metatrader.info/node/99

但CloseAll()函数似乎只对EA所连接的图表上的货币有效。

我怎样才能使这个CloseAll()函数对所有未平仓的交易起作用,即使是没有连接到EA图表的货币?

 
folioboy:
大家好...

我做了一个EA,交易两种不同的货币。我希望有一个功能,在两种货币都达到X数额的利润时关闭所有交易。

我已经尝试了这个例子。

http://www.metatrader.info/node/99

但是CloseAll()函数似乎只对EA所连接的图表上的货币有效。

我如何使这个CloseAll()函数适用于所有未平仓的交易,即使是没有连接到EA图表的货币?

不,CloseAll函数应该关闭所有已开立的订单!

你试过了吗?

 
codersguru:
不,CloseAll函数应该关闭所有已开的订单!你试过吗?

是的,我试过了...

但我没有为我的EA使用任何神奇的数字,也许这就是问题所在。

也许如果我使用魔法数字,它就能工作?

 

嗯...

我已经测试了很多不同的方法来关闭订单,但EA似乎只关闭EA所连接的货币。也许有一些方法可以使用SYMBOL 来关闭所有订单...

有没有人有一些想法?

 

策略测试器 出现故障.....,请帮助...

我有一个朋友,我们正在来回交易EA并在策略测试器中测试它们。完全相同的代码在他的演示中执行,而在我的演示中没有。

当我在我的上做时,我在日志中得到的是...

2006.06.15 13:00:21 38matrailing 输入。MagicNumber=0; Lots=1; Slippage=3; StopLoss=5; TakeProfit=60; TrailingStop=10;

2006.06.15 13:00:09 38matrailing: 载入成功。

然后所有其他的标签只显示零或空白。

在他的模拟账户中,日志显示了我所得到的信息,但随后它又启动了所有执行的交易。这是什么原因?请帮帮我吧!

附加的文件: