[存档!]我将免费写一份顾问报告 - 页 22

 
nab17:
亲爱的程序员们,你们好

我有一个问题。我需要一个EA来关闭两个特定订单的总利润,而不影响其他订单。
我没有设法找到合适的东西。
非常感谢您!

如果你不再向我发送垃圾邮件,我将不胜感激。在一个主题中的一个帖子就足以让人听到。我已经删除了其他的。
 
Vinin:
请不要再发送垃圾邮件了。在一个主题中的一个帖子就足以让人听到。我已经删除了其余的部分。
这就是如此有礼貌和耐心的版主从何而来?我不明白。
 
帮助我修复EA代码中的一个错误。我试图在Laguerre.mq4指标的基础上编写一个EA。我在编译时得到了一个错误。代码中的错误位置以黑体字显示。该指标位于专家顾问的正文中。


//+------------------------------------------------------------------+
//|Laguerre+.mq4|
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+

//---- 输入参数
外来的int TrailingStop=0。
外来的int StopLoss=0。
外来的double lots=0.1。
外部双倍gamma = 0.7。
外部int Price_Type=0;
//---- 缓冲区
双层过滤器[]。
双层L0[]。
double L1[];;
双层L2[]。
双L3[]。

//+------------------------------------------------------------------+
//|自定义指标 初始化功能
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(5)。
//---- 指标
SetIndexStyle(0, DRAW_LINE);
SetIndexDrawBegin(0, 1)。
SetIndexLabel(0, "LaguerreFilter")。
SetIndexBuffer(0, Filter)。
SetIndexBuffer(1, L0)。
SetIndexBuffer(2, L1)。
SetIndexBuffer(3, L2)。
SetIndexBuffer(4, L3)。
//----
string short_name="LaguerreFilter(" + DoubleToStr(gamma, 2) + ")"。
IndicatorShortName(short_name)。
return(0);
}

//+------------------------------------------------------------------+
//|Custor指示器去初始化功能|
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}

//+------------------------------------------------------------------+
//|自定义指标迭代函数|
//+------------------------------------------------------------------+
int start()
{
int限制。
int counted_bars = IndicatorCounted()。
双CU,CD。
//----,最后计数的条形图将被重新计算。
如果(counted_bars>0)
counted_bars--。
否则
counted_bars = 1。
极限=Bars - counted_bars。
//---- RSI的计算方法
for (int i=limit; i>=0; i--)
{
double Price=iMA(NULL,0,1,0,0,Price_Type,i)。

L0[i] = (1.0 - gamma)*Price + gamma*L0[i+1]。
L1[i] = -gamma*L0[i] + L0[i+1] + gamma*L1[i+1] 。
L2[i] = -gamma*L1[i] + L1[i+1] + gamma*L2[i+1]。
L3[i] = -gamma*L2[i] + L2[i+1] + gamma*L3[i+1]。

CU = 0。
CD=0。
如果(L0[i]>= L1[i])
CU = L0[i] - L1[i]。
否则
CD = L1[i] - L0[i]。
如果(L1[i]>= L2[i])。
CU = CU + L1[i] - L2[i]。
否则
CD = CD + L2[i] - L1[i]。
如果(L2[i]>= L3[i])
CU = CU + L2[i] - L3[i]。
否则
CD = CD + L3[i] - L2[i]。

如果(CU + CD != 0)
过滤器[i] = (L0[i] + 2 * L1[i] + 2 * L2[i] + L3[i]) / 6.0。
}
return(0);

//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+
int start()
{
如果(OrdersTotal()>0)
{
CU = 0。
CD=0。
{
OrderSelect(SELECT_BY_POS)。
如果(OrderSymbol()==Symbol())
{
如果(OrderType()== OP_BUY)
{
如果((L0[i] >= L1[i])CU = L0[i] - L1[i], (L1[i] >= L2[i])CU = CU + L1[i] - L2[i], (L2[i] >= L3[i] )
OrderClose(OrderTicket(),OrderLots())。
否则CU++。
}
如果(OrderType()== OP_SELL)
{
如果(CD = L1[i] - L0[i],CD = CD + L2[i] - L1[i],CD = CD + L3[i] - L2[i])
OrderClose(OrderTicket(),OrderLots())
否则CD++。
}
}
}

如果(CU > CD && CU == 0)
{
OrderSend(Symbol(),OP_BUY,lot,Ask,0/*(Ask-StopLoss*Point)*/,0,)。
}
如果(CU < CD && CD ==0)
{
OrderSend(Symbol(),OP_SELL,lot,Bid,0/*(Bid+StopLoss*Point)*/,0,)。
}



//----
return(0);
}
//+------------------------------------------------------------------+
 
两次首发。重读课本,分解典型的EA结构
 
我需要一个交易系统的顾问读数,当一个指标的箭头出现时,必须按照箭头的方向开立一个订单,如果它改变了,就关闭之前的订单并开立一个新的订单,设置止损和止盈。
 
kvg31:

我将写一个任何复杂的顾问。最主要的是要有一个好的想法。你将如何使用它,我不关心:将出售 - 我不介意(我不会要钱)。

P.S.如果你需要一个指标,你必须告诉我你想在其中使用它的策略。


你好!需要一个MTD 4的交易机器人。我可以发送图片与交易的例子。请回答邮件。money3@inbox.ru 邮件上的所有细节都会转发。同时附上照片和描述。
 
Oleg888:

你好!需要一个MTD 4的交易机器人。我可以发送带有交易实例的图片。请回复邮件。money3@inbox.ru,我将通过邮件发送所有细节。连同照片和描述。
还有一些MTD 4的图片。
 
granit77:
两次首发。重读课本,解构典型的EA结构。

那么,你能不能纠正错误,让我看到这个错误?
 
ramses:
好吧,你能不能修正这个错误,让我看到这不是一个错误?
你知道为什么没有人纠正你的代码吗?因为这清楚地表明你没有读过课本,在这种情况下,这将是一个困难的、可能是无用的对话。
 
你好,我需要一个专家顾问,在考虑到价差的情况下,在离市场一定距离的两个方向上都能建仓(如海湾止损和卖出限价,也可以选择在一个方向上建仓更好)。有可能在未进入市场时启用拖车,并在开仓后移至盈亏平衡点(根据灵活标准)。而且,如果有一个选项可以在以前的头寸关闭后自动开仓或平仓,那就更好了。
原因: