Ema Cross! - 页 31

 

我编写了一些简单的代码(对我来说必须是简单的 )。

问题是它不能编译。我很确定这只是一个简单(又是这个词!)的问题。

这是无止损EA的基础,我在考虑交易的趋势在哪里。交易完全由价格行为控制,没有任何外部影响。

因此,不存在SL、TP或TS!我们的想法是让交易开始时有足够的时间。

我们的想法是,交易在ema交叉后的一个小节开始(以允许交易进入一个趋势)。

当emas再次交叉时,交易就结束了。

纯粹而简单。我们应该怎么称呼它?"纯粹的交叉"?

如果有人能检查出编译问题,我将非常感激。

谢谢。

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

//| EMA_CROSS.mq4 ||

//| Coders Guru |

//|https://www.mql5.com/en/forum|/|

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

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

//| Messed about by : demag!!! |

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

#财产版权 "Coders Guru"

#property link "https://www.forex-tsd.com"

//---- 输入参数

外部双数 Lots = 0.1;

extern int ShortEma = 3;

extern int LongEma = 7;

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

//|专家初始化函数 |

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

int init()

{

//----

//----

return(0);

}

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

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

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

int deinit()

{

//----

//----

return(0);

}

bool isNewSymbol(string current_symbol)

{

//循环所有打开的订单并比较符号

int total = OrdersTotal();

for(int cnt = 0 ; cnt < total ; cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。

Print( "OrderSymbol = " + OrderSymbol() + ": Symbol = " + current_symbol);

string selected_symbol = OrderSymbol();

如果(current_symbol == selected_symbol)

返回(False)。

}

返回(True)。

}

int Crossed (double line1 , double line2)

{

static int last_direction = 0;

static int current_direction = 0;

//在第一次加载时不工作,要等第一次交叉时才工作!

static bool first_time = true;

if(first_time == true)

{

first_time = false。

返回(0)。

}

if(line1>line2)current_direction = 1; //向上

if(line1<line2)current_direction = 2; //向下

如果(current_direction != last_direction) //方向改变了

{

last_direction = current_direction;

return (last_direction);

}

否则

{

return (0); //方向没有改变

}

}

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

//|专家启动功能|

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

int start()

{

//----

int cnt, ticket, total;

双重SEma, LEma。

如果(Bars<100)

{

Print("小于100的条数")。

return(0);

}

SEma = iMA(NULL,0,ShortEma,0,MODE_EMA,PRICE_CLOSE,0)。

LEma = iMA(NULL,0,LongEma,0,MODE_EMA,PRICE_CLOSE,0)。

static int isCrossed = 0;

isCrossed = Crossed (LEma,SEma);

total = OrdersTotal();

if(total < 1 || isNewSymbol(Symbol()))

{

如果(isCrossed == 1 )

{

如果(ticket>0)

{

如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("BUY订单打开:",OrderOpenPrice())。

}

否则 Print("打开BUY订单错误。",GetLastError())。

return(0);

}

如果(isCrossed == 2)

{

如果(ticket>0)

{

如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))Print("SELL订单打开 : ",OrderOpenPrice());

}

否则 Print("打开卖出订单错误。",GetLastError())。

return(0);

}

return(0);

}

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。

//OrderPrint()。

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

{

如果(OrderType()==OP_BUY) // 多头头寸被打开

{

//应该平仓吗?

如果(iMA(NULL,0,3,PRICE_CLOSE,0)>7)

{

OrderCloseBy(order_id,opposite_id)。

返回(0)。

}

return(0);

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

 

谢谢你的更新,我将让这个宝贝运行一周并公布结果,在5分钟和15分钟内不作任何改动。这个EA将只交易欧盟/美国的交易时段

乔尔格卡

 

我想问一下,为什么我在不同的时间下载EA,不同的版本有不同的结果?我再次下载了最新的版本,它的工作看起来像找到了。在什么情况下,你改变了计数器,并遵循交易?在什么情况下,你关闭你的EA交易手动,它不应该自己关闭?

 

我的系统要求的EA

大家好。

如果有人能让它变得简单

我总是用我设置的指标进行手动交易,超过2年,通常他们也会跨越EMA,但有任何条件。

这是我设置的指标。

EMA : 5 , 18 (都在接近中)

RSI : 8

慢速斯托克指标:15 , 5 , 5

当两个EMA值交叉时,进入市场(买入/卖出),条件是

- 如果RSI>50,慢速随机指数>40,在15分钟和1小时的时间框架内买入

- 卖出 如果RSI < 50 , 慢速随机指标 < 60

-止损 35点(在时间框架15分钟的EMA交叉点以上或以下)。

- 目标利润120点

- 止损30点

- 订单1手

我将感谢他/她做出这样的决定。

谢谢你

上帝保佑你

4xtrader

 
4xtrader:
大家好。

如果有人能让它变得简单

我总是用我设置的指标在两年内进行手动交易,通常它们也会穿越EMA,但有任何条件。

这是我设置的指标。

EMA : 5 , 18 (都在接近中)

RSI : 8

慢速斯托克指标:15 , 5 , 5

当两个EMA值交叉时,进入市场(买入/卖出),条件是

- 如果RSI>50,慢速随机指数>40,在15分钟和1小时的时间框架内买入

- 卖出 如果RSI < 50 , 慢速随机指标 < 60

- 止损35点(在时间框架15分钟的EMA交叉点以上或以下)。

- 目标利润120点

- 止损30点

- 订单1手

我将感谢他/她做出这样的决定。

谢谢你

上帝保佑你

4xtrader

你用这个系统手动交易成功了吗?你可以发布一些报告吗?

 

???

Hendrick, Codersguru 我从昨天开始测试Ea,默认设置,除了交易量和获利(30点),但看起来不是很好。

附加的文件:
sem_ttulo_2.gif  43 kb
 
4xtrader:
大家好。

如果有人能让它变得简单

我总是用我设置的指标在两年内进行手动交易,通常它们也会跨越EMA,但有任何条件。

这是我设置的指标。

EMA : 5 , 18 (都在接近中)

RSI : 8

慢速斯托克指标:15 , 5 , 5

当两个EMA值交叉时,进入市场(买入/卖出),条件是

- 如果RSI>50,慢速随机指数>40,在15分钟和1小时的时间框架内买入

- 卖出 如果RSI < 50 , 慢速随机指标 < 60

- 止损35点(在时间框架15分钟的EMA交叉点以上或以下)。

- 目标利润120点

- 止损30点

- 订单1手

我将感谢他/她做出这样的决定。

谢谢你

上帝保佑你

4xtrader

嗨,4xtrader。

你交易哪些货币对?

 

美元的挣扎!

creative:
Hendrick, Codersguru 我从昨天开始测试Ea,默认设置,除了手数大小和获利(30点),但看起来不妙,

有创意。

我认为昨天是非常艰难的一天!我认为一些消息影响了美元(也许是巴基斯坦的炸弹)。

只要等待,一切都会好起来的!

这是我的声明 ,仍然是一个赢家!

附加的文件:
 

你的声明是甜蜜的编码者 。我将等待,并让你知道。

谢谢!

 
codersguru:
有创意。

我认为昨天是非常艰难的一天我想有些消息影响了美元(也许是巴基斯坦的炸弹)。

只要等待,一切都会好起来的

这是我的声明 ,仍然是一个赢家!

嗨,代码大师和所有的人

我已经对外汇失去了希望,直到这个EA。

我在周四 晚上在美元/加元、美元/日元、欧元/日元、美元/瑞士法郎、英镑/美元上演示了它,第二天早上没有农场新闻。我想看看它是否能存活。

它做到了,都是赢家。

谢谢你,我将继续尝试,并将转发结果。