初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1296

 

大家好。关于WebRequest函数 的问题,当我发送POST请求时,它没有发送数据阵列。在服务器端,我得到 " <WSGIRequest: POST '/'> "。以下是代码。

string headers=NULL;
   char   data[],result[];
   string result_headers;
   string url="http://127.0.0.1:8000";

   ResetLastError();
   string params = "email=app@exemple.com&account=56781234";
   StringToCharArray(params, data, 0, StringLen(params));
   //ArrayResize(data,StringToCharArray(params,data,0,WHOLE_ARRAY,CP_UTF8));
   Print("data: ", CharArrayToString(data));
   int res=WebRequest("GET", url, headers, 0, data, result, result_headers);

   if(res!=200)
     {
      Print("Ошибка передачи файла на сервер #"+(string)res+", LastError="+(string)GetLastError());
     }
   else
     {
      Print(ArraySize(result));
     }
 
Alexander Mikryukov:

大家好。关于WebRequest函数 的问题,当我发送POST请求时,它没有发送数据阵列。在服务器端,我得到 " <WSGIRequest: POST '/'> "。以下是代码。

所以你有一个GET,对吗?在这里,我正在发送一个json(MQL5)。一切正常。

   char data[]; 
   ArrayResize(data, StringToCharArray(jv.Serialize(), data/*, 0, WHOLE_ARRAY*/)-1);
   
   
   char res_data[];
   string res_headers=NULL;
   int r=WebRequest("POST",m_uri, "Content-Type: application/json\r\n", 5000, data, res_data, res_headers);
   Print(__FUNCTION__+": web server response code: ",(string)r);
   if(r!=-1)
     {
      Print(__FUNCTION__+": JSON message sent: "+CharArrayToString(data));
      if(save_to_file)
        {
         string file_name=file_name_prefix+"_"+m_symbol+"_"+(string)m_magic_number+".csv";
         int file_handle=FileOpen(file_name,FILE_READ|FILE_WRITE|FILE_CSV);
         if(file_handle!=INVALID_HANDLE)
           {
            FileSeek(file_handle,0,SEEK_END);
            FileWriteString(file_handle,"\n"+CharArrayToString(data));
            FileClose(file_handle);
           }
        }
     }

p.s. "好日子 "这个愚蠢的说法是怎么回事?例如,这里有一篇 关于这个问题的文章。对不起,洪水来了 :)

 

请参考。

datetime  iTime( 
   const string        symbol,          // символ 
   ENUM_TIMEFRAMES     timeframe,       // период 
   int                 shift            // сдвиг 
   );
在这段代码中,移位被认为是相对于当前时间的BAR的数量
这里的例子是:
 int bar_index=iBarShift(symbol,tf,time,exact); 
   
 datetime bar_time=iTime(symbol,tf,bar_index); 
帮助中指定iBarShift返回条形索引。

我的理解是,条数和条形指数是不同的参数。

如果条形图的编号从当前时间(当前=0)开始,我会理解。
但是OnCalculate()给出了从窗口历史开始的条形索引号。

能否请你解释一下我有什么错误?
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
Документация по MQL5: Доступ к таймсериям и индикаторам / Bars
  • www.mql5.com
Bars - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
自己发现了。

iBarShift 的帮助充满了胡言乱语。
该函数返回的不是OnCalculate()意义上的条形索引,
,而是条形偏移,即移位。

在宗教裁判所时代,这将被烧死在火刑柱上:)
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
Документация по MQL5: Доступ к таймсериям и индикаторам / iBarShift
  • www.mql5.com
iBarShift - Доступ к таймсериям и индикаторам - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
User_mt5:
自己发现了。

iBarShift 的帮助充满了异端。该函数返回的不是OnCalculate()意义上的条形索引, ,而是条形偏移,即移位。在宗教裁判所时代,这将被烧死在火刑柱上:)



我不是这些方面的专家....但篝火的第一个候选人......是你。在写下 "这样的异端 "之前,你应该先自己阅读一下文件......!

P.S. 并弄清楚什么、哪里和如何...
 

祝大家身体健康!

这个问题很简单,也很天真。我在Mql5中写了一个EA。我想用这种算法与交易所的加密货币合作,如BitMex。我不明白如何用另一种语言为这种交换重写EA,最好用C语言,因为Mql5似乎与C语言相似。

 
大家下午好。请告诉我,我的账户是否被封锁了。领导我的分析师告诉我,要找一个经纪人。我不认识经纪人,在这种情况下该怎么办? 账户里的金额是500美元。
 
Evgen1504:
大家下午好。请告诉我,我的账户是否被封锁了。领导我的分析师告诉我,要找一个经纪人。我不认识这个经纪人,在这种情况下该怎么办? 账户里的金额是500美元。
你被骗了,不是500。
 
Amon1953:

祝大家身体健康!

这个问题很简单,也很天真。我在Mql5中写了一个EA。我想用这种算法与交易所的加密货币合作,如BitMex。我不明白如何用另一种语言为这种交换重写EA,最好用C语言,因为Mql5似乎与C语言相似。

你不需要重写它。你可以寻找一个允许在MQL5中交易加密货币的经纪人。
以防万一,请看MT5/View/Symbols

 
Rost17:
这是给mql专家的一个问题。我如何在专家顾问系统中改变仓位关闭 标记?我想在卖出收盘时有一个红色箭头向左,在买入收盘时有一个蓝色箭头向左。然后我就会立即看到,这不是相反的开放,而恰恰是关闭。我在MT4中使用过它,不知道有什么问题。 我想在MT5中改变它。预先感谢你。

搜索或编写你自己的函数,在图表上显示交易