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

 
DDFedor >> :

你是如何看待MQL5的?

如果没有,请问我们。 不是每个人都喜欢看音译,所以音译也限制了回答你的能力。

谢谢你,DDFedor,当我不得不在google上找东西的时候,我就用俄文的文字字母做贴花。

 

帮助我给指标着色,我希望它在数值上升时为绿色,下降时为红色。

以下是代码。

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Green


int BarsCount = 10000;

//---- buffers
double buf_1[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
    SetIndexStyle(0,DRAW_HISTOGRAM);
    SetIndexBuffer(0, buf_1);
//    SetIndexStyle(1,DRAW_HISTOGRAM);
//    SetIndexBuffer(1, buf_2);
    //----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
int i;
//----
   int limit = BarsCount;
    if ( limit > Bars)
        limit = Bars;
        
   for ( i = limit; 0 <= i; i--) {

        buf_1[ i] = High[ i]-Low[ i];
   
        
        
        }
//----
   return(0);
  }
//+------------------------------------------------------------------+
 

我想在15:00下一个挂单,如果当时没有未结头寸。

我写了以下内容。

如果(Hour()=15 || Minute()=0)

double max_level=High[iHighest(NULL,0,MODE_HIGH,13,0)]; //定义过去13个柱状的最高价格。
double min_level=Low[iLowest(NULL,0,MODE_LOW,13,0)]; //定义过去13个柱状的最低价格。
int Dist_SL =60; // 设置SL(pt)。
int Dist_TP =60; // 设置TP(pt)。
//--------------------Цикл установки ордераBUY STOP---------------------------------------------------------------------
while(true) //开启订单循环。
{
int Min_Dist1=MarketInfo(Symbol(),MODE_STOPLEVEL); // Min_Dist.
double Price_B=max_level; // Bid price

//----------------Устанавливаем ордер на покупку---------------------------------------------------------------------------
如果(NormalizeDouble(Price_B,Digits)<//如果小于允许的范围。
归一化的双数(Ask+Min_Dist1*Point,Digits))
{ // 只针对BuyStop!
Price_B=Ask+Min_Dist1*Point; //它不能再接近了
警报("宣布的买入价格已被改变:价格=",Price_B)。
}
double SL_B=Price_B - Dist_SL*Point; // 宣告买入的SL价格
double TP_B=Price_B + Dist_TP*Point; // 买入的申报TP价格
Alert("交易订单已经发送到服务器,正在等待回复...")。
int ticket1=OrderSend(Symbol(), OP_BUYSTOP, 0.1, Price_B, 0, SL_B, TP_B); //设置买入指令
if (ticket1>0) // 成功了 :)
{
警报("买入订单打开",ticket1)。
break; // 退出循环
}

我一定是写错了什么,你能告诉我如何在特定时间开仓吗?

 

嗯,一点一点来。

1.如果滴答声是在零分,脚本就会开始。最好是把零点的分钟设置为起始分钟,然后设置一个标志,防止脚本再次启动。但原则上这并不关键。

2.你只在价格水平低于允许的情况下进行检查,而当价格水平高于允许的情况下,你就不检查。

3.你在检查价格时使用归一化,但在替代时不使用,可能会有错误。

 
Roger >> :

嗯,一点一点来。

1.如果滴答声是在零分,脚本就会开始。最好是把零点的分钟设置为起始分钟,然后设置一个标志来防止脚本再次启动。但原则上这并不关键。

2.你只在价格水平低于允许的情况下进行检查,而当价格水平高于允许的情况下,你就不检查。

3.你在检查价格时使用归一化,而不是在替代时使用,可能会有错误。

谢谢你的答复。我是一个完全的编程初学者,我刚刚开始研究帮助文件,并决定编写我的EA。 我明白,这个框架。

如果(Hour()=15 || Minute()=0)一点都不正确,每个字符在编译时都会导致错误,请告诉我如何正确书写?

 
albon >> :

我想在15:00下一个挂单,如果当时没有未结头寸。


我一定是写错了什么,你能告诉我如何在特定时间开仓吗?

搜索论坛,我从KimiV那里借来的,里面有一个按时间限制操作的功能

 
albon писал(а)>>

谢谢你的答复。我是一个完全的编程新手,刚刚开始研究帮助文件,并立即决定编写我的EA。我理解,框架

如果(Hour()=15 || Minute()=0)是完全不正确的,在编译时每个字符都会导致错误,请告知如何正确书写?

将其改为

如果(Hour()==15 || Minute()==0)

PS 如果你什么都不知道,何必呢,最好把它送给别人。

 
dmmikl86 >> :

帮助我给指标上色,我想让数值上升为绿色,下降为红色。

这里是代码。

这应该用两种不同颜色的缓冲剂来完成。

如果价格上涨,那么价值被分配到一个缓冲区,如果下降到另一个缓冲区。

而第二个被保留在黑色体中(例如,SetIndexEmptyValue(0,0.0);)

在填充之前,0被分配给两个缓冲区,之后,你将缓冲区分配给你想存入的人和你不想打扰的人。

Vinin似乎有这样的指标,通过代码库资料搜索。

 
你能告诉我是否有可能在终端的主窗口插入一张小图片?
 
IlyaA >> :
你能告诉我是否有可能在终端的主窗口插入一张小图片?

还没有到他们承诺的5个月(至少以标准方式)。

原因: