[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 105

 
 
有没有人见过在小时图上工作时,在3个爱德勒屏幕上有一个程序化的中级交易系统。请分享该文件。
 
rid >> :

在这里,你可以看一下平仓的情况...

http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=select&id=4

谢谢.... - 我还没有全部看完,但有几个顾问帮我解决了问题:)如果你不能自己做,这里有一个小东西......)

 

你好。

你能告诉我一些事情吗?追踪止损(用于卖出交易)被设置为 。

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+ TrailingStop*Point,OrderTakeProfit(), 0, Blue);

这不是我想做的事。而不是一个新的止损值

Ask+ TrailingStop*Point
我把:(OrderOpenPrice()-OrderProfit()/2 )

像这样。

OrderModify(OrderTicket(),OrderOpenPrice(),(OrderOpenPrice()-OrderProfit()/2 ),OrderTakeProfit(), 0, Blue

然而,日志给了我错误130或错误4051(无效的函数参数值)

为什么?我在这里做错了什么。停尸者受到尊重。

此外,如果我把 OrderProfit()/2 替换成一个常数, 例如TrapilingStop*Point, 修改就能顺利进行,不会出现错误


 
Rita писал(а)>>

你好。

你能告诉我一些事情吗?追踪止损(用于卖出交易)被设置为 。


我需要做的是,否则。而不是一个新的止损

我插入:(OrderOpenPrice()-OrderProfit()/2 )

像这样。

然而,日志给了我错误130或错误4051(无效的函数参数值)

为什么?我在这里做错了什么。拦路虎已经得到了尊重。

注意,如果我把 OrderProfit()/2 替换成一个常数, 例如TrailingStop*Point, 修改后的结果是没有错误的

最好是将利润转换为点数。它是以存款的货币为单位。

我们应该检查所获得的止损值,并将其四舍五入(值)。

最好是检查一下,以便不要把它放在比经纪公司允许的更近的地方。

取当前价格和开盘价格之间的平均值比较容易。

 
Vinin >> :

利润最好用点来表示。它是以存款的货币为单位。

我们应该检查所获得的止损值,最好将其四舍五入(值)。

在当前价格和开盘价之间取一个平均值比较容易。

你说的是什么样的利润?
权宜之计得到了尊重。- 这就是我在帖子中所说的。
//-----------------------------

我不需要一个平均数值。也就是说,我将来需要OrderProfit()/n值。


 
Rita писал(а)>>

你说的是什么样的利润?
权宜之计得到了尊重。- 我在我的文章中写到了这一点。
//-----------------------------

我不需要一个平均数值。也就是说,我将来需要OrderProfit()/n 值。

有了价格,就不难实现。但这取决于主人。我不会坚持的。

 

你能建议一个EA 在其中一个待定交易触发后,删除待定 交易,只忽略未完成的交易,只有在待定交易触发后有新的交易打开时才会触发?

我不知道该怎么做。http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=31,这是一个很好的EA,但如果有一对公开的交易,它就会立即删除待定的交易,也许可以用它来做一些事情,或者只是改变设置。


还有一个EA,在一个交易对的任何交易结束后删除挂单(ips, sl, trawl, manual close)。
 
Vinin >> :

有了价格,就不难实现。但这取决于主人。我不会坚持的。

但如何用bik和询问价格来实现呢?

你能用一个代码例子给我一个提示吗?

 
Rita писал(а)>>

那你是如何用bik和问价来实现的?

你能给我一个代码例子吗?

double CalculateStopLoss(int OP, int N){
    double RetVal=0;
    double tmpStopLoss;
    double StopLevel= MarketInfo(Symbol(),MODE_STOPLEVEL);
    if ( OP==OP_BUY) {
       tmpStopLoss=(Bid-OrderOpenPrice())/ N;
       if ( StopLevel> tmpStopLoss/Point) tmpStopLoss= StopLevel*Point;
       RetVal=NormalizeDouble(OrderOpenPrice()+ tmpStopLoss,Digits);
    }
    //   Отработка остальных случаев
   return( RetVal);
}

这可能不是最好的方法。也许有人会建议一个更好的办法。

事实上,它是百分比拖网的一个变种。

原因: