[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 196

 
torah01:

购买


int start()

{
OrderSend(Symbol(),OP_BUYSTOP,0.01,Ask+20*Point,3,Bid)- 50*Point,Bid+50*Point);

return(0);
}

请帮助...

将+改为-。 检查你的止损和止盈,现在你的止损=70+点差,止盈=+30减去点差
 
TheXpert:
请不要在公共场合传播异端。去别的地方发呆吧,那里有很多东西可以玩...。

谢谢你,我正要来向你咨询。
 
NickXXX:

1.那么在这里,double只被应用于添加分钟和小时。这样,参考点就可以被指定为HHMM(如16. 23)。

2.看了最后几页,当然也有关于日期时间的,但不完全相同。他们只是以HH.MM格式输出最后一个订单的时间。



不是一个好的搜索。第190页,发布时间18.09.2011 23:03
 
nemo811:

你好。

请帮助我纠正代码。

下面的两行都有故障。

提前感谢。

该方案本身。


如果(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)

MODE_HISTORY会更有意义

 
tara:

< 0.6,或类似的情况。除法的余数总是小于1 :)

为什么?)12除以 10的余数=2。
NickXXX:

如果有很多这样的变数怎么办?

这是不是太糟糕了,还是会有效果?

还有一个小问题,如果说我为一个条件的执行设置了一个时间间隔(例如16.00-16.03)。如何使它只执行一次,尽管有新的蜱虫到来?

这很有效。要想只做一次,可以输入一个额外的服务变量,像这样

bool flag=true;

int start()
{
  if (ваше уловие по времени && flag)
  {
    тра-та-та
    flag=false;
  }
}
 
Figar0:

为什么?)12的余数除以10=2。

这将发挥作用。而要做一次,就要输入一个额外的服务变量,像这样。


是的,它有点小故障 :)
 
tara:


如果(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)

MODE_HISTORY会更有意义。

我非常同意。到了晚上,我的大脑就会变慢。

然而,即使是这样的修正,我也注意到,当你重新声明int MAGIC;变量时,脚本中的上述故障(魔法变量和数字之间的混淆)就会发生(这个魔法正是由于某种原因被锁定的)。如果你去掉int MAGIC;(extern int MAGIC = 1; remains),一切都像时钟一样工作。

一个合乎逻辑的问题,为什么我需要它?你可以删除MAGIC;并在平静中生活。BUT。

我需要把这段代码放到一个库里。但如果我不定义int MAGIC,就会出现错误。

这就是我认为我应该做的。这一切都能在我的专家顾问中发挥作用吗?为什么这个int MAGIC;?

下面的脚本。

extern int MAGIC = 1;
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
int OrdTicket=OrdTicket_b();
  Alert (OrdTicket);

   
//----
   return(0);
  }
//+------------------------------------------------------------------+
int OrdTicket_b()
 {
  string SMB=Symbol();
  int OrdTicket;
  int i;
  for(i=0;i<OrdersTotal();i++)
   {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)
     {
      if(OrderSymbol()==SMB)
       {
        if(OrderMagicNumber()==MAGIC || OrderMagicNumber()==777)
         {
          if(OrderType()==OP_BUY || OrderType()==OP_SELL)
           {
            OrdTicket=OrderTicket();
           }  
         }  
       }          
     }
   }
  return(OrdTicket);
 
mt-4终端中的邮件服务器设置保存在哪个文件夹中?
 

同志们,请帮助...我写了一个简单的代码,但在编译时,它说括号不平衡,但我已经数了300次了--一切都到位了

这个想法非常简单--如果MACD在7分钟内一直在0以上(或以下),则开仓。

//+------------------------------------------------------------------+
//|MACD ^^^.mq4|
//| Copyright © 2011, MetaQuotes Software Corp.
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright"Copyright © 2011, MetaQuotes Software Corp.
#属性链接 "http://www.metaquotes.net"

外部int TP = 100。
外来的int TS = 100。
外来的双倍lot = 0.1。
int slip = 3;
int Magic = 1;

//+------------------------------------------------------------------+
//|专家初始化功能 |
//+------------------------------------------------------------------+
int init()
{
//----

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

//----
return(0);
}
//+------------------------------------------------------------------+
//|专家启动功能|
//+------------------------------------------------------------------+
int start()
{
//----

int total,ticket; //declared total and ticket
int signal = signal_MACD(); // signal_MACD将值传递给信号
AnalyzeSignal(signal); //分析信号
int MACD[8] = {0,1,2,3,4,5,6,7}; //创建一个一维MACD阵列
MACD[0] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE, MODE_MAIN,7)
MACD[1] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,6)。
MACD[2] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE, MODE_MAIN,5)。
MACD[3] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,4)。
MACD[4] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,3) 。
MACD[5] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,2)。
MACD[6] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,1)。
MACD[7] = iMACD(Symbol(),1,5,34,5,PRICE_CLOSE,MODE_MAIN,0) 。

total = OrdersTotal(); //总的订单数。

int signal_MACD() //计算MACD信号
{
if(total<1) //如果订单少于1,考虑条件。
{
如果(MACD[0]<0)
{
如果(MACD[1]>0)
{
如果(MACD[2]>0)
{
{ 如果(MACD[3]>0)
{
{ 如果(MACD[4]>0)
{
{ 如果(MACD[5]>0)
{
{ 如果(MACD[6]>0)
{
{ 如果(MACD[7]<0)
{
返回(-100)。
}
}
}
}
}
}
}
}
如果(MACD[0]>0)
{
如果(MACD[1]<0)
{
如果(MACD[2]<0)
{
{ 如果(MACD[3]<0)
{
{ 如果(MACD[4]<0)
{
{ 如果(MACD[5]<0)
{
{ 如果(MACD[6]<0)
{
如果(MACD[7]>0)
{
return(100);
}
}
}
}
}
}
}
}
}
}

空白分析信号(int signal)。
{
如果(signal == 100)
{
ticket = OrderSend(Symbol(),OP_BUY,Ask,slip,Bid-TS*Point,Bid+TP*Point, "buy",Magic,0,Green);
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET;)
Print("open for Buy at price:" OrderOpenPrice())。
}
否则
{
Print("open failed due to:" GetLastError())。
return(0);
}
}
如果(signal == -100)
{
ticket = OrderSend(Symbol(),OP_SELL,Bid,slip,Ask+TS*Point,Ask-TP*Point, "Sell",Magic,0,Green);
如果(ticket>0)
{
OrderSelect(ticket,SELECT_BY_TICKET)。
Print("open for sale at price:" OrderOpenPrice())。
}
否则
{
Print("open failed due to:" GetLastError())。
return(0);
}
}
}

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

 
p.s. 你是如何把剧本画得像你这么漂亮的?