将免费为您创建专家顾问! - 页 16

 
vriesde1:
大家好。

我是一名计算机科学专业的学生,正在攻读硕士学位,对外汇非常感兴趣。

基本上,我愿意为任何需要的人创建一个免费的专家顾问。我刚刚完成了我自己的第一个专家顾问,它在2007-2008年给我带来了100%的回报,但在2007年之前的年份表现得不太理想,有些甚至没有盈利。因此,我在寻找更多的灵感!

我这样做是为了在mq4和外汇交易系统本身获得额外的经验。

哦,顺便说一下,我已经在研究内盘专家了,所以不要再想那个了:D。

把你的计划发给我,如果EA不是太复杂,你可以在一周内完成。

问候!!!我不知道你是否还有时间。

我不知道你在收到这些回复后是否还有时间......我有一个很好的策略,我用它来做每年超过100%的交易......这取决于我在交易中的勤奋程度......但我都是手动操作的,因为我不知道如何编写EA的代码......。如果你能帮我解决这个问题,我将非常感激......给我发邮件:matthewjenson@gmail.com

 
vriesde1 wrote>>
大家好。

我是一名计算机科学专业的学生,正在攻读硕士学位,对外汇非常感兴趣。

基本上,我愿意为任何需要的人创建一个免费的专家顾问。我刚刚完成了我自己的第一个专家顾问,它在2007-2008年给我带来了100%的回报,但在2007年之前的几年表现得不太理想,有些甚至没有盈利。因此,我在寻找更多的灵感!

我这样做是为了在mq4和外汇交易系统本身获得额外的经验。

哦,顺便说一下,我已经在研究内盘专家了,所以不要再想这个问题了:D。

把你的计划发给我,如果EA不是太复杂,你可以在一周内完成。

问候你

请帮助。我可以想象,你非常非常忙。但是,我正在寻找一个非常好的长期盈利的自动交易商,它可以在所有货币对上运行,并且95-100%的准确率。这是你能做到的吗?请让我知道,并继续保持良好的工作。)

请随时给我发电子邮件,bobwirwin3@aol.com

谢谢你...

 

//+------------------------------------------------------------------+
//| CHIFX.mq4 ||
//| Copyright © 2008,chinex nig ltd.
//| chinexannex@yahoo.com | |
//+------------------------------------------------------------------+
#property copyright"Copyright © 2008,chinex nig ltd."
#property link "chinexannex@yahoo.com"

extern int takeprofit = 30; // 目标利润(点)。
extern int stoploss = 30; // 以点为单位的预期损失
extern int iTrailingStop= 30; // 当达到目标利润时,扩展的点数收益。
extern int slippage = 3; // 买入价和卖出价之间的差异为3点
extern double MA_1 = 14; // 14期的移动平均线(长)。
extern double MA_2 = 7; // 7周期的移动平均线(短)。
extern double RS1 = 14; // 14期的相对标准指数。
extern double S_FAST = 10; // %k期间的随机值
extern double S_SLOW = 3; // 减速期的随机值。
extern double S_SIGN = 3; // %d期间的随机值
extern double lot = 0.01; // 合同的单位大小

//+------------------------------------------------------------------+
//|专家初始化函数|
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家的去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+

int start()
{
//-------------------------------------------------------------------+
int cnt,ticket,total;
双RSI_CURR,RSI_PREV,MA_1,MA_2,STOCHVAL,STOCHSIGN。
//-------------------------------------------------------------------+
RSI_CURR =iRSI(NULL,0,14,PRICE_CLOSE,0)。
RSI_PREV =iRSI(NULL,0,14,PRICE_CLOSE,1)。
MA_1 =iMA (NULL,0,14,0,MODE_EMA,PRICE_CLOSE,0);
MA_2 =iMA (NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0);
STOCHVAL =iStochastic(NULL,0,10,3,3,MODE_SMA,0,MODE_MAIN,0)。
STOCHSIGN=iStochastic(NULL,0,10,3,3,MODE_SMA,0,MODE_SIGNAL,0)。

//-------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|计算最佳手数|
//+------------------------------------------------------------------+
double Lot = lot;
double dFreeMargin = AccountFreeMargin()*lot/100;
Lot = NormalizeDouble(dFreeMargin,2);
如果(AccountFreeMargin()<(10000*lot))
{
Print("我们没有钱", AccountFreeMargin());
返回(0)。
}
//+---------------------------------------------------------------+
//|请求关闭/打开多头头寸
//+---------------------------------------------------------------+
如果(STOCHVAL>STOCHSIGN && Open[0])
{
//---------------------
total=OrdersTotal()。
如果(total<2)
{
ticket=OrderSend(Symbol(),OP_BUY,lot,Ask,3,Ask-stoploss*Point,Ask+takeprofit*Point, "long position",0,0,Blue)。
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)。
Print("BUY order opentime : ", OrderOpenTime());
Print("BUY order opened : " , OrderOpenPrice());
Print("BUY order closed : " ,OrderClosePrice());
Print("BUY订单帐户利润:", AccountProfit())。
}
否则
Print("打开BUY订单出错:",GetLastError())。
}
return(0);
}
//---------------------------------------------------------------------

如果(STOCHVAL<STOCHSIGN)
{
//-----------------

for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_BUY && // 检查开仓情况
OrderSymbol()==Symbol()) //检查符号
{
如果(OrderType()==OP_BUY) // 多头头寸已开
{
//应该平仓吗?
OrderClose(OrderTicket(),OrderLots(),Ask,3,Blue); //关闭头寸
return(0);
}
//-----------------------
Sleep(1000); //停用EA 1秒

//-------------
如果((STOCHVAL<STOCHSIGN &&Open[0])
{
//---------------------
total=OrdersTotal();
如果(total<2)
{
ticket=OrderSend(Symbol(),OP_SELL,lot,Bid,3,Bid+stoploss*Point,Bid-takeprofit*Point, "short position",0,0,Red)。
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES);
Print("SELL order opentime : ", OrderOpenTime());
Print("SELL order opened : " , OrderOpenPrice());
Print("卖出订单关闭:",OrderClosePrice())。
Print("卖出订单 帐户利润: ", 帐户利润())。
}
否则
Print("打开卖出订单错误:",GetLastError())。
return(0);
}
//----------------------------

如果(STOCHVAL>STOCHSIGN)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_SELL && // 检查开仓情况
OrderSymbol()==Symbol()) //检查符号
{
如果(OrderType()==OP_SELL) //多头仓位被打开
{
//应该平仓吗?
//-----------------
OrderClose(OrderTicket(),OrderLots(),Bid,3,Red); //关闭头寸
return(0);
}
//-----------------------
Sleep(1000); //停用EA 1秒




//+------------------------------------------------------------------------------------+
//| 修改仓位--基于跟踪止损的止损点。
//+------------------------------------------------------------------------------------+
如果(iTrailingStop>0)
{

如果(OrderType()==OP_BUY)
{
如果(Bid-OrderOpenPrice()>Point*iTrailingStop)
{
如果(OrderStopLoss()<Bid-Point*iTrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*iTrailingStop,OrderTakeProfit(),0,Green) 。
}
否则
}
如果(OrderType()==OP_SELL)
{
如果(OrderOpenPrice()-Ask > Point*iTrailingStop)
如果(OrderStopLoss()> Ask+Point*iTrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*iTrailingStop, OrderTakeProfit(),0,Yellow);
}
}}}}}}}}}}}





嗨,我需要你对这个EA的帮助。它不能打开交易,它的回溯测试很差

............chinexex































 

//+------------------------------------------------------------------+
//| CHIFX.mq4 ||
//| Copyright © 2008,chinex nig ltd.
//| chinexannex@yahoo.com | |
//+------------------------------------------------------------------+
#property copyright"Copyright © 2008,chinex nig ltd."
#property link "chinexannex@yahoo.com"

extern int takeprofit = 30; // 目标利润(点)。
extern int stoploss = 30; // 以点为单位的预期损失
extern int iTrailingStop= 30; // 当达到目标利润时,扩展的点数收益。
extern int slippage = 3; // 买入价和卖出价之间的差异为3点
extern double MA_1 = 14; // 14期的移动平均线(长)。
extern double MA_2 = 7; // 7周期的移动平均线(短)。
extern double RS1 = 14; // 14期的相对标准指数。
extern double S_FAST = 10; // %k期间的随机值
extern double S_SLOW = 3; // 减速期的随机值。
extern double S_SIGN = 3; // %d期间的随机值
extern double lot = 0.01; // 合同的单位大小

//+------------------------------------------------------------------+
//|专家初始化函数|
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家的去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+

int start()
{
//-------------------------------------------------------------------+
int cnt,ticket,total;
双RSI_CURR,RSI_PREV,MA_1,MA_2,STOCHVAL,STOCHSIGN。
//-------------------------------------------------------------------+
RSI_CURR =iRSI(NULL,0,14,PRICE_CLOSE,0)。
RSI_PREV =iRSI(NULL,0,14,PRICE_CLOSE,1)。
MA_1 =iMA (NULL,0,14,0,MODE_EMA,PRICE_CLOSE,0);
MA_2 =iMA (NULL,0,7,0,MODE_EMA,PRICE_CLOSE,0)。
STOCHVAL =iStochastic(NULL,0,10,3,3,MODE_SMA,0,MODE_MAIN,0)。
STOCHSIGN=iStochastic(NULL,0,10,3,3,MODE_SMA,0,MODE_SIGNAL,0)。

//-------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|计算最佳手数|
//+------------------------------------------------------------------+
double Lot = lot;
double dFreeMargin = AccountFreeMargin()*lot/100;
Lot = NormalizeDouble(dFreeMargin,2);
如果(AccountFreeMargin()<(10000*lot))
{
Print("我们没有钱", AccountFreeMargin());
返回(0)。
}
//+---------------------------------------------------------------+
//|请求关闭/打开多头头寸
//+---------------------------------------------------------------+
如果(STOCHVAL>STOCHSIGN && Open[0])
{
//---------------------
total=OrdersTotal()。
如果(total<2)
{
ticket=OrderSend(Symbol(),OP_BUY,lot,Ask,3,Ask-stoploss*Point,Ask+takeprofit*Point, "long position",0,0,Blue);
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)。
Print("BUY order opentime : ", OrderOpenTime());
Print("BUY order opened : " , OrderOpenPrice());
Print("BUY order closed : " ,OrderClosePrice());
Print("BUY订单帐户利润:", AccountProfit())。
}
否则
Print("打开BUY订单出错:",GetLastError())。
}
return(0);
}
//---------------------------------------------------------------------

如果(STOCHVAL<STOCHSIGN)
{
//-----------------

for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_BUY && // 检查开仓情况
OrderSymbol()==Symbol()) //检查符号
{
如果(OrderType()==OP_BUY) // 多头头寸已开
{
//应该平仓吗?
OrderClose(OrderTicket(),OrderLots(),Ask,3,Blue); //关闭头寸
return(0);
}
//-----------------------
Sleep(1000); //停用EA 1秒

//-------------
如果((STOCHVAL<STOCHSIGN &&Open[0])
{
//---------------------
total=OrdersTotal();
如果(total<2)
{
ticket=OrderSend(Symbol(),OP_SELL,lot,Bid,3,Bid+stoploss*Point,Bid-takeprofit*Point, "short position",0,0,Red)。
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)。
Print("SELL order opentime : ", OrderOpenTime());
Print("SELL order opened : " , OrderOpenPrice());
Print("卖出订单关闭:",OrderClosePrice())。
Print("卖出订单 帐户利润: ", 帐户利润())。
}
否则
Print("打开卖出订单错误:",GetLastError())。
return(0);
}
//----------------------------

如果(STOCHVAL>STOCHSIGN)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_SELL && // 检查开仓情况
OrderSymbol()==Symbol()) //检查符号
{
如果(OrderType()==OP_SELL) //多头仓位被打开
{
//应该平仓吗?
//-----------------
OrderClose(OrderTicket(),OrderLots(),Bid,3,Red); //关闭头寸
return(0);
}
//-----------------------
Sleep(1000); //停用EA 1秒




//+------------------------------------------------------------------------------------+
//| 修改仓位--基于跟踪止损的止损方式
//+------------------------------------------------------------------------------------+
如果(iTrailingStop>0)
{

如果(OrderType()==OP_BUY)
{
如果(Bid-OrderOpenPrice()>Point*iTrailingStop)
{
如果(OrderStopLoss()<Bid-Point*iTrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*iTrailingStop,OrderTakeProfit(),0,Green) 。
}
否则
}
如果(OrderType()==OP_SELL)
{
如果(OrderOpenPrice()-Ask > Point*iTrailingStop)
如果(OrderStopLoss()> Ask+Point*iTrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*iTrailingStop, OrderTakeProfit(),0,Yellow);
}
}}}}}}}}}}}





嗨,我需要你对这个EA的帮助。它不能打开交易,它的回溯测试很差

............chinexex































 
zupnik wrote>>

我有一个剧本要写。如果您发送电子邮件到 marperga@net.hr,我将向您解释,谢谢,Marijan。

如果你能帮助修复EA,它不能进行交易,也需要神奇的数字

//+------------------------------------------------------------------+
//|
//| Copyright © 2009, MetaQuotes Software Corp.|
//|https://www.metaquotes.net/|
//+------------------------------------------------------------------+
#property copyright " Copyright © 2009, MetaQuotes Software Corp.
#property link "https://www.metaquotes.net/"

//---- 输入参数
外置双数Lot1=0.1。
外置双数Lot2=0.1。
extern string Sym1="EURUSD";
extern string Sym2="USDCHF";
外部字符串 Operation1="买入"。
extern string Operation2="buy";
外部双倍佣金1=0.0。
extern double Commission2=0.0;
外置双倍利润=50;
extern double multiply= 1.6;
extern int MaxTrades= 4; // 最大开单数
extern int Pips= 50; // 从一个订单到另一个订单的距离(点)。
extern int StopLoss = 300; // StopLoss
extern int TrailingStop = 15;//跟踪止损的点数
extern bool BuyStopOrders=True;
extern bool UseMM=true;
extern string Bollinger_Symbol = "EURCHF";

int OP1=-1, OP2=-1;

double Ilo1=0, Ilo2=0;
外部双数 Lots = 0.1;
extern double GridSize = 50;
extern double GridSteps = 2;
外部双倍TakeProfit = 50;
外部字符串 Data5 = " * * * 资金管理";
外部 bool AccountIsMicro = false;
外部双倍利润目标 = 50;
extern double Risk = 6;

//+------------------------------------------------------------------+
//| 专家初始化功能
//+------------------------------------------------------------------+
int init()
{
//----
//初始化全局变量
if (!GlobalVariableCheck("_CanClose")) {
GlobalVariableSet("_CanClose",0)。
}
//if (!GlobalVariableCheck("_CanSet")) {
//GlobalVariableSet("_CanSet",0);
//}

//----
return(0);
}
//+------------------------------------------------------------------+
//|专家的去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+
int start()
{
Ilo1=Lot1; Ilo2=Lot2。
如果(UseMM) {
Ilo1=TradeLot(AccountBalance())。
Ilo2=TradeLot(AccountBalance())。
}


//----
double Commissions=0;


if (Operation1=="buy" || Operation1=="BUY") OP1=OP_BUY;
if (Operation2=="buy" || Operation2=="BUY") OP2=OP_BUY;
if (Operation1=="sell" || Operation1=="SELL") OP1=OP_SELL;
if (Operation2=="sell" || Operation2=="SELL") OP2=OP_SELL;


如果(OP1<0 || OP2<0) {
Comment("选择了错误的操作,中止了...")。
返回。
}


如果(GlobalVariableGet("_CanClose")==1 && CntOrd(OP1,0,Sym1)==0 && CntOrd(OP2,0,Sym2)==0){
GlobalVariableSet("_CanClose",0)。
}


如果(GlobalVariableGet("_CanClose")==0){
//设置初始订单
SetOrders();
}

Comment("Balance=",AccountBalance(),"\n",Sym1," Lot=",Ilo1," ",Sym2," Lot=",Ilo2,"\nFloating profit=",CalcProfit()," Expected profit=" ,Profit*Ilo1*10)。
//检查利润
佣金=Commission1*Ilo1+Commission2*Ilo1。

如果 ( (CalcProfit()-Commissions) >= (Profit*Ilo1*10) ){
GlobalVariableSet("_CanClose",1);
}

CloseAll()。


//----
return(0);
}
//+------------------------------------------------------------------+


double CalcProfit() {
//计算已建仓位的利润
int cnt;
double _Profit;
_Profit=0。

for(cnt=0; cnt<OrdersTotal(); cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
如果(OrderSymbol()==Sym1 || OrderSymbol()==Sym2) {
_Profit=_Profit+OrderProfit()。
}
}
return(_Profit);
}

void CloseAll() {
int _total=OrdersTotal(); // 订单的数量
int _ordertype;//订单类型
if (_total==0) {return;}
int _ticket; // ticket number
double _priceClose;//关闭订单的价格。
//关闭所有已开仓位
如果(GlobalVariableGet("_CanClose")==1) {

for(int _i=_total-1;_i>=0;_i--)
{
如果(OrderSelect(_i,SELECT_BY_POS))
{
_ordertype=OrderType()。
_ticket=OrderTicket()。
switch(_ordertype)
{
case 0:
// 平仓买入
_priceClose=MarketInfo(OrderSymbol(),MODE_BID)。
Print("Close on ",_i," position order with ticket ¹",_ticket);
OrderClose(_ticket,OrderLots(),_priceClose,0,Red)。
休息。
case 1:
//平仓卖出
_priceClose=MarketInfo(OrderSymbol(),MODE_ASK)。
Print("关闭",_i, "带票的仓位订单¹",_ticket)。
OrderClose(_ticket,OrderLots(),_priceClose,0,Red)。
休息。
默认情况下。
//数值从1到5,删除待定订单
Print("Delete on " ,_i," position order with ticket ¹",_ticket);
OrderDelete(_ticket)。
break;
}
}
}


}
返回。
}

void SetOrders() {
//设置初始订单
double OpenPrice=0;

如果(CntOrd(OP1,0,Sym1)==0){
如果(OP1==OP_BUY) OpenPrice=MarketInfo(Sym1,MODE_ASK);
如果(OP1==OP_SELL) OpenPrice=MarketInfo(Sym1,MODE_BID)。
OrderSend(Sym1,OP1,Ilo1,OpenPrice,0,0,0, "HedgeTrader",0,0,Red)。
//返回。
}

如果(CntOrd(OP2,0,Sym2)==0){
如果(OP2==OP_BUY) OpenPrice=MarketInfo(Sym2,MODE_ASK);
如果(OP2==OP_SELL) OpenPrice=MarketInfo(Sym2,MODE_BID)。
OrderSend(Sym2,OP2,Ilo2,OpenPrice,0,0,0, "HedgeTrader",0,0,Green)。
//返回。
}

}

int CntOrd(int Type, int Magic, string Symb) {
//返回具有特定参数的订单数量
int _CntOrd;
_CntOrd=0。
for(int i=0;i<OrdersTotal();i++)
{
OrderSelect(i, SELECT_BY_POS, MODE_TRADES)。

如果(OrderSymbol()==Symb) {
如果 ( (OrderType()==Type && (OrderMagicNumber()==Magic) || Magic==0)) _CntOrd++;
}
}
return(_CntOrd);
}

double TradeLot(double MyBalance) {
double _Ilo=0;
//AccountEquity()
_Ilo=MathFloor(MyBalance/Delta)/10;
如果(_Ilo<0.1) _Ilo=0.1。
返回(_Ilo)。

}

 

你好...

我真的需要你的帮助来开发我的外汇策略。它是非常有利可图的,我真的需要它在EA上。

如果你能帮助我,我将不胜感激。

我的电子邮件地址是enofe1912@yahoo.com。

给我发个邮件,我可以把策略转发给你。

以下是1月26日至今的交易细节。

谢谢。

细节。
毛利。 $36.16 毛亏损。 ($18.36) 总净利润: $17.80
利润系数。 1.97 预期回报。 $0.29
绝对缩水。 ($7.54) 最大跌幅。 $1.48(13.54%)

总交易量: 62 空头头寸(赢得%): 33 (87.88%) 多头头寸(胜率): 17 (82.35%)
盈利交易(占总数的百分比)。 55 (88.71%) 亏损交易(占总数的%): 7 (11.29%)
最大的 盈利交易。 $10.76 亏损交易。 ($12.64)
平均值 盈利的交易。 $0.66 亏损交易: ($2.62)
最大 连赢($)。 23($7.64) 连续亏损($): 2(($14.14))
最大的 连续盈利(美元): $16.94(5) 连续亏损(计数): ($14.14)(2)
平均数 连续赢钱。 9 连续亏损。 1
 
我在我的EA中卖出,但当它谈到利润时,它没有打开新的订单,尽管新的蜡烛正在下降,我使用移动十字星策略,但当它上升和下降时,它打开新的订单,导致我失去了许多卖出的蜡烛? 还有一个问题,我可以改变订单票 的价值,我自己在mq4? 你的答案将是深深的感激
 
eseq wrote>>

你好。

我已经尝试了很长时间来制作一个EA。你能不能帮我写一个EMA交叉盘的代码,每一个交叉盘买入/卖出货币和下一个交叉盘卖出/买入。

嗨,我需要帮助,如何把EA放在一起,请发邮件给我 polo_4rextrader@hotymail.com

谢谢

 

你好,我有一个典型的马丁格尔 交易系统,但我想对它进行调整!基本上,我想让它做的是保持仓位开放,只在触及TP后关闭,而不是在触及SL时关闭仓位,然后将手数加倍。因此,货币对可以对我不利,比如说,5个级别,头寸保持开放,直到货币对向我的方向移动,击中TP,然后关闭所有头寸。我希望我说得很清楚。

附加的文件:
 

嗨,vriesde1

感谢你在这里提供的免费服务,但我最近看到了。

我要求人们为我创建一个带有tft箭头的EA(江恩_hilo指标的修改版),在箭头处有进场和退场,并且在任何时候都没有对立的订单,即任何进场信号都会关闭之前的订单。该EA运行良好,但在窄幅波动期间,它在顶部买入并在底部卖出,因为它的信号只在2根蜡烛之后。你能修改它,使它能在箭头处接受订单,而不需要重新画出这些箭头吗?

谢谢你,我的电子邮件地址

fontu