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

 
大家好!!!。我是一个初学者。我想问:当我编译一个EA时,我得到以下错误信息:'StopLoss' - 声明没有类型。

下面是代码。

//--- 要与使用3和5位数报价的经纪人合作。
//----将SL和TP的值乘以10。
StopLoss = STP;-在这里可以修改??????。
TakeProfit = TKP;
如果(_Digits==5 || _Digits==3)
{
SL=SL*10。
TP=TP*10。

}

有什么建议吗?

 
vyacheslavovich:
大家好!!!。我是一个初学者。我想问:在编译EA时,我得到的错误是:'StopLoss' - 声明没有类型。
这意味着StopLoss变量之前没有被声明。
 
vyacheslavovich:
大家好!!!。我是一个初学者。我想问:当我编译一个EA时,我得到以下错误信息:'StopLoss' - 声明没有类型。

下面是代码。

//--- 要与使用3和5位数报价的经纪人合作。
//----将SL和TP的值乘以10。
StopLoss = STP;-在这里可以修改??????。
TakeProfit = TKP;
如果(_Digits==5 || _Digits==3)
{
SL=SL*10。
TP=TP*10。

}

有什么建议吗?

   double StopLoss = STP;
   double TakeProfit = TKP;

这应该会更好。

 
下午好。我一直在为运行外部文件而挣扎,这已经是第二天了。你能告诉我什么是错的吗。
#import "shell32.dll"
   int ShellExecuteA(int hwnd, string lpOperation, string lpFile,string lpParameters,string lpDirectory,int nShowCmd);
#import
void OnStart()
  {
   ShellExecuteA(CHART_WINDOW_HANDLE,"open","F:\\222.mp3", NULL,NULL,1);
  }
 
Andrei-1:
你好。我在启动外部文件方面已经挣扎了两天。请告知有什么问题。
//+------------------------------------------------------------------+
//| Функция получает хэндл графика                                   |
//+------------------------------------------------------------------+
int ChartWindowsHandle(long chart_ID)
  {
//--- подготовим переменную для получения значения свойства
   long result=-1;
//--- сбросим значение ошибки
   ResetLastError();
//--- получим значение свойства
   if(!ChartGetInteger(chart_ID,CHART_WINDOW_HANDLE,0,result))
     {
      //--- выведем сообщение об ошибке в журнал "Эксперты"
      Print(__FUNCTION__+", Error Code = ",GetLastError());
     }
//--- вернем значение свойства графика
   return((int)result);
  }

但它只会得到图形的手柄。而图形本身则包含在一个更高级别的窗口(父窗口)中。在ShellExecuteA中,你应该用父窗口的句柄代替。

看看透明MetaTrader 5的脚本:它有通过ChartID() 获取终端手柄的功能。

Transparent MetaTrader 5
Transparent MetaTrader 5
  • 投票: 19
  • 2014.03.10
  • Karputov Vladimir
  • www.mql5.com
Данный скрипт позволяет делать полупрозрачным весь терминал.
 
向大家问好!
MQL4有一个很好的功能 - Barshift。不幸的是,它在MQL5中是不可用的。作为替代这个函数的变体,你可以从起始日期(寻找转变的日期)复制时间序列数据,并查看复制的元素数量。但是,如果我们需要处理很多不同的日期,我们不希望通过不断地多次复制时间序列来使计算机超负荷工作。当然,我们不得不尝试使用数组枚举来寻找正确的值。在这里,我们来到了一个问题。:)在搜索完文档后,我只发现了一个标准函数,它可以在一个数组中搜索值。ArrayBSearch。但它对包含日期时间 数据的数组不起作用。有没有一个标准函数可以在数据时间数组内按日期搜索?或者是否有可能使用某种数据转换?
 
BlackTomcat:
向大家问好!
MQL4有一个很好的功能 - Barshift。不幸的是,它在MQL5中是不可用的。作为替代这个函数的变体,你可以从起始日期(寻找转变的日期)复制时间序列数据,并查看复制的元素数量。但是,如果我们需要处理很多不同的日期,我们不希望通过不断地多次复制时间序列来使计算机超负荷工作。当然,我们不得不尝试使用数组枚举来寻找正确的值。在这里,我们来到了一个问题。:)在搜索了整个文档之后,我只发现了一个标准函数,它可以在一个数组中搜索值。ArrayBSearch。但它对包含日期时间 数据的数组不起作用。有没有一个标准函数可以在数据时间数组内按日期搜索?或者是否可以使用一些数据转换?
类似的东西已经写了很久了--在网站上搜索。
 
有没有办法通过FileOpen来增加一个文件(特别是csv)而不覆盖它?我的意思是,FileOpen(name,FILE_CSV|FILE_WRITE|...)只是重新创建一个干净的文件,而不是打开已有的文件,如果它已经存在。文本的问题已经解决了,虽然不是很优雅的方式:只是事先把它读到一个变量里,然后把它加到新的记录里。但csv不起作用...
 
大家好!今天我想通过英镑的消息来赚钱,下了两个买入止损和卖出止损的挂单,止损是200点,获利是100点。 消息发布后,价格直线上升,但买入止损单在价格直线上升500点时以-0.34美元关闭。
 
我不知道...扩散必须是