[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 245

 

我如何计算一个订单的利润?

if(OrderType() == 0) profitbuy += ((Bid - OrderOpenPrice())*OrderLots()*(tickvalue/ticksize))+OrderSwap()+OrderCommission();

我做错了什么?在欧洲/美元上可以工作,但在美元/日元上可以工作,但不正确。

 

我决定尝试使用改变时间框架的功能,这对我来说似乎更容易、更清晰。它不能编译。也许是我,当然是一些愚蠢的事情。我是这样写的。

'fChangePeriod' - 未定义变量 C:\terminal\experts/indicators/timeframe.mq4 (37, 12)

'WM_COMMAND' - 未定义变量 C:Terminal/experts/indicators/timeframe.mq4 (62, 22)

//+------------------------------------------------------------------+
//|                                                    таймфрейм.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window
extern int nPeriod=30,P=1;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----
   if(P<0){fChangePeriod;P--;}
//----
   return(0);
  }
//+------------------------------------------------------------------+

void fChangePeriod(int nPeriod)
{
   int hWnd, wParam;
   
   switch(nPeriod)
   {
      case PERIOD_M1:  wParam = 33137; break;
      case PERIOD_M5:  wParam = 33138; break;
      case PERIOD_M15: wParam = 33139; break;
      case PERIOD_M30: wParam = 33140; break;
      case PERIOD_H1:  wParam = 33135; break;
      case PERIOD_H4:  wParam = 33136; break;
      case PERIOD_D1:  wParam = 33134; break;
      case PERIOD_W1:  wParam = 33141; break;
      case PERIOD_MN1: wParam = 33334; break;
   }
        
   hWnd = WindowHandle(Symbol(),Period());
        
   PostMessageA(hWnd,WM_COMMAND,wParam,0);
}
 
我还不知道dll,为了让这个脚本工作,我应该把这个dll放在其中一个文件夹里吗?我有点糊涂了。
 
Vinin:

给我的代码。

不要沉默,说点什么,我到底有没有想清楚?

 
关于库,WinAPI功能,ServicesMT4.rar应该放在哪个根目录下? 就看ServicesMT4.rar,打开一看,也是没办法--打开程序发誓,指定的格式错误。
 
Dimka-novitsek:
至于库,WinAPI函数,你需要保存ServicesMT4.rar的根目录是什么? 只要看看ServicesMT4.rar,打开它,也不工作--程序开放者发誓,指定错误的格式。

这里有一个脚本,包含了如何使用所有库函数的例子。一切都可以用同样的方式进行。

归档文件应在MT4目录下解压,或将所有内容单独解压。还有一个指令,有5点。

档案馆对我来说是开放的。我刚刚检查了一下。你不应该编造它。我建议你仔细阅读说明。

下面是一个专家顾问的例子。

#include <ServicesMT4.mqh>
void start()
  {
   int hwndChart = WindowHandle(Symbol(),Period());
   while (!IsStopped())
    {
     for (int i = 0; i < 9; i++)
      {
       ServiceSetTimeframeByNumber(hwndChart, i);
       Sleep(2000);
      }
    }
  }
 

嗯,我想我已经读过... 文件

ServicesMT4.mqh (94.1 Kb) 查看
WinUser32.mqh (70.3 Kb) 查看
Check_ServicesMT4.dll.mq4 (115.2 Kb)
ZH_All_Quotings 4.10912.mq4 (8.4 Kb) 查看

我把文件放在属于它们的地方,没有问题。

但这是4。将所有这些档案和MT4目录下的库解压到MT4的根目录。

我不明白这一点。什么是根目录? 如何从存档名称中删除ZIP?是的,档案只是保存在我的电脑的左侧文件夹中,所以我,它在那里签名,我没有看到在ZIP的名称,它被称为ServicesMT4.rar,真的,扩展名是ZIP,但如何改变它,如果我需要?也许不是,但根目录是什么?

 
Dimka-novitsek:

嗯,我想我已经读过...文件

ServicesMT4.mqh (94.1 Kb) 查看
WinUser32.mqh (70.3 Kb) 查看
Check_ServicesMT4.dll.mq4 (115.2 Kb)
ZH_All_Quoteings 4.10912.mq4 (8.4 Kb) 查看

我顺利地把它放在了它应该在的地方。

但这是4。我把所有这些档案和MT4目录下的库解压到MT4根目录。

我不明白这一点。什么是根目录?如何从存档名称中删除ZIP?是的,档案只是保存在我的电脑的左侧文件夹中,所以我,它在那里签名,我没有看到在ZIP的名称,它被称为ServicesMT4.rar,真的,扩展名是ZIP,但如何改变它,如果我需要?也许没有必要,但根目录是什么?

1.列出的文件 都在档案中。但该档案还包含最重要的ServicesMT4.dll库本身的文件。否则,它就不能被连接。我们最近被剥夺了这种可能性。

2.MT4的根目录是您的MT4的目录。不然怎么简单解释呢--我不知道。

要看到这些扩展,你必须在文件夹的属性中配置这些扩展的可见性。我非常惊讶,程序员禁用了扩展功能的可见性。就像一个假人。

4.希望在这之后,重命名扩展名就不难了。以防万一,这是从鼠标的右键上下文菜单中进行的。

5.我有WinRar打开这个文件的任何扩展名。扩展名只是为了自动将文件与程序联系起来以打开它们。

 

请给我一个提示。情况如下。


#import "Trend.ex4"

Double Zena(imya,sdvig);

##进口

当我试图导入 这个函数 时,编译器写出:'imya' - 预期的参数定义。我应该怎么做?

 
DemanRap:

请告诉我。情况如下。


#import "Trend.ex4"

Double Zena(imya,sdvig);

##进口

当我试图导入这样的函数时,编译器写出:'imya'--预期参数定义。我应该怎么做?

必须指定参数的类型。