[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 153

 
buroff:

找到了 "ForexSession "指标,但必须改变时间参数。LocalGMT=3 - 莫斯科,BrokerGMT=0 - 伦敦,我也改变了会话的开始和结束时间。

但在美国没有任何效果--我添加了 "void ShowSessionBroker() "块--为纽约增加了30分钟,编译后出现了错误,我没有足够的精力来解决它。

好心人,你能告诉我我做错了什么,如何解决吗?

我把它正常编译了。
 
Sergey_Rogozin:


Sps,为什么最后是1而不是0呢? 如果RSI值要和前一个值比较,应该这样写吗?
double RSI = iRSI(NULL,0,14,PRICE_CLOSE,2);
 
Vovo4ka:

对了,为什么最后有一个1和一个0? 如果你想把RSI的值和前一个值进行比较,你应该这样写吗?

你可以自由地设置任何条目的数量。重要的是你想在哪个柱子上看到 RSI值。

当然,为了进行比较,你必须至少有两个数值,即不同条形上的数值。

 
Sergey_Rogozin:
你可以自由地设置任何条目的数量。重要的是你想在哪个柱子上看到 RSI值。

例如,如果我想将当前的RSI值与之前的收盘价 进行比较,那么我可以这样做...
double RSI1 = iRSI(NULL,0,14,PRICE_CLOSE,1);
double RSI2 = iRSI(NULL,0,14,PRICE_CLOSE,2);
然后我们进行比较......对吗?
 
Vovo4ka:

比方说,我想把当前的RSI值与之前的收盘价进行比较,那么就像这样......然后我们进行比较,对吗?
完全正确。有一个修正:当前的条形图是零。
 
Sergey_Rogozin:
你可以设置任何条目的数量。这只是你想获得 RSI值的哪个条形的问题。


我还可以告诉你如何使信号打开一个交易......因为它在所有的条形上打开交易......((((

如果信号只打开一个交易....,在重复一个交易,而且如果前一个交易关闭也没有关系....。

这样的事情...)

 

你需要在开单前检查是否有已开的订单。

你将需要一个小型/非复杂的函数。

这将允许或不允许你在 有信号的情况下进入市场

 
Sergey_Rogozin:

你需要在开单前检查是否有已开的订单。

你将需要一个小的/不复杂的功能。

这将允许或不允许你进入市场,即使有信号要这样做。


你是否可以建议.....?插入....,否则我无法真正评估顾问...()
 
Vovo4ka:

你能不能建议.....?要把....,否则我真的无法评估EA的这种方式...()
该函数看起来像这样
  bool Exist(){
     for(int cnt=OrdersTotal()-1; cnt>=0; cnt--){
        if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES)){
          if(OrderMagicNumber()==Magic){
            if(OrderSymbol()==Symbol()){
              if(OrderType()<2)return(true);
      } } } }        
  return(false);} 

也就是说,如果有未结头寸,该函数将检测到它们并返回true。

你的任务是在OrderSend(.......)之前放上类似这样的东西。

if(!Exist() && Signal)OrderSend(Symbol()........);
где Signal - Ваш сигнал на вход в рынок.
 

你能告诉我如何检查订单的有效性吗?例如,我有一个挂单,需要检查它是否触发了一个止损单。


bool check=OrderChek(ticket)。

Comment("带有票据的订单", ticket, "不存在(被触发)")。


我找不到如何做到这一点。