为MetaTrader 4开发了一个API函数库 - 页 6 1234567 新评论 Forex Trader 2006.09.18 19:11 #51 <br / translate="no">还要注意,欧米茄 "不知道 "Mforex.h文件中的定义。也就是说,例如,当调用开仓函数时,你应该指定操作代码,例如,Sell - 1,而不是OP_SELL,等等。更多细节,请参见DevKit文档,其中描述了omega与外部库的工作方式。 好运! 我有DevKit的文档,但我在那里没有找到任何东西,英语是一个黑暗的森林。 但有一个从mforex.n文件中提取的内容。 订单 enum { OP_BUY=0, OP_SELL。 OP_BUY_LIMIT。 OP_SELL_LIMIT。 OP_BUY_STOP。 OP_SELL_STOP。 OP_BALANCE。 呼叫中心:OP_CREDIT }; 这是否意味着,如果 OP_BUY=0则 OP_SELL=1和 OP_BUY_LIMIT=2等? 如果是这样,这并不难。 工具的名称是什么? Forex Trader 2006.09.18 20:20 #52 <br / translate="no"> 工具的名称呢? 你几乎已经为自己想好了一切。工具名称必须使用倒逗号,因为它将被传递给MT4而不被改变。当我创建MFOREX库时,我最初想以同样的方式对所有可用的货币对进行编号,但后来发现标准的方式不能提供交易工具的列表!这时,我才发现,原来我是在为所有的交易工具编号。因此,我们只是写 "USDCHF "或 "GBPUSD"。 你也可以在一个字符串变量中传递配对的名称。 好运! Forex Trader 2006.09.18 20:48 #53 非常感谢你,到目前为止,欧米茄的问题较少。 我发现了一个更大的问题。 MT4中的专家顾问坏了,即它自己不工作,它在列表中是灰色的,该怎么办? 我再次下载了它,它没有变化。 我从HELP下载了它。 在我们完成开发后,我们必须编译专家顾问。要做到这一点,在EA编辑器中运行 "文件-编译 "菜单命令,按F9或点击工具条按钮。作为成功编译的结果,将创建一个扩展名为*.EX4的程序可执行文件,它将被自动放置到/EXPERTS文件夹中。可以在客户终端的 "Navigator - Expert Advisors "窗口中查看已编译的Expert Advisors列表。如果编译不成功,专家顾问的图标将是灰色的。这意味着它不能被使用。 Forex Trader 2006.09.18 21:25 #54 作为成功编译的结果,一个扩展名为*.EX4的可执行程序文件被创建,它被自动放在/EXPERTS文件夹中。可以在客户终端的 "导航仪-顾问 "窗口中查看已编译的EA列表。如果编译不成功,专家顾问的图标将是灰色的。这意味着它不能被使用。<br / translate="no"> 你在这里是错的。专家顾问是完全可行的。灰色也意味着没有*.MQ4源文件。大多数商业性的EA都是这样以编译的形式发布的。尝试删除任何专家顾问的来源,并重新启动终端 - 专家顾问将变成灰色。 此外,我建议用新的文件替换Mem.dll文件。我已将后者转换为新建立的197交易终端。在我网站的文件中,Mem.dll已经改成了新版本。 http://www.min2006.ru 好运! Forex Trader 2006.09.19 14:13 #55 下午好,我有这个问题。 如果我想逐一进入市场,我还需要指定一个价格吗? Forex Trader 2006.09.19 14:40 #56 下午好,所以我有这样一个问题:<br/ translate="no">如果我想按市场进入,我还需要指定一个价格吗? 你好,这是一个标准程序。所有的专家顾问都是这样工作的:首先,你得到当前的价格(TikKot函数),然后你在这个价格形成一个新的订单(NewPos)。如果你开了一个买入订单,你将采取卖出价格,如果你卖出订单,你将采取买入价格。请看我网站上的C++或Delphi的例子。在那里你可以找到职位空缺的变种。好运! Forex Trader 2006.09.20 14:38 #57 所以昨天我在Omega中用不同的功能运行了一整天的DLL,发现Omega不断从DLL中挂起。电脑号码窗口弹出,甚至有一些,我不知道这是不是只在演示中出现的问题,还是什么?因此,我对数字窗口并不感到困扰,但欧米茄的挂起使它无法工作...... Forex Trader 2006.09.20 15:08 #58 所以昨天我在Omega中用不同的功能运行了一整天的DLL,发现Omega不断从DLL中挂起。电脑号码窗口弹出,甚至有一些,我不知道这是不是只在演示中出现的问题,还是什么?因此,带有数字的窗口并没有真正困扰我,但欧米茄的悬挂使它无法工作......<br/ translate="no"> 我无法回答任何具体问题。我还没有用Omega测试过这个库。显然,问题是库中的一个错误的函数调用。你是否为返回的数据数组预留了内存?我也可以建议你仔细调查MT4和库本身的日志(它工作时创建Protokol.dat文件)。 带有计算机号码的窗口只在演示版中弹出。好运! Forex Trader 2006.09.20 19:36 #59 你是否为返回的数据集保留了内存?<br / translate="no"> 这是如何做到的? Forex Trader 2006.09.20 21:26 #60 <br/ translate="no">这是如何做到的? 这是任何编程语言的标准程序。在欧米茄的文档中可以看到。你需要声明一个数组,以便其后续使用。例如,要获得历史上的报价,你需要2000-5000个数组元素。对于数组,在操作之前,我们需要使用Omega来分配内存中的必要空间。 你看到日志中的内容了吗? 1234567 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
好运!
我有DevKit的文档,但我在那里没有找到任何东西,英语是一个黑暗的森林。
但有一个从mforex.n文件中提取的内容。
订单
enum { OP_BUY=0,
OP_SELL。
OP_BUY_LIMIT。
OP_SELL_LIMIT。
OP_BUY_STOP。
OP_SELL_STOP。
OP_BALANCE。
呼叫中心:OP_CREDIT
};
这是否意味着,如果
OP_BUY=0则
OP_SELL=1和
OP_BUY_LIMIT=2等?
如果是这样,这并不难。
工具的名称是什么?
你几乎已经为自己想好了一切。工具名称必须使用倒逗号,因为它将被传递给MT4而不被改变。当我创建MFOREX库时,我最初想以同样的方式对所有可用的货币对进行编号,但后来发现标准的方式不能提供交易工具的列表!这时,我才发现,原来我是在为所有的交易工具编号。因此,我们只是写 "USDCHF "或 "GBPUSD"。
你也可以在一个字符串变量中传递配对的名称。
好运!
我发现了一个更大的问题。
MT4中的专家顾问坏了,即它自己不工作,它在列表中是灰色的,该怎么办?
我再次下载了它,它没有变化。
我从HELP下载了它。
在我们完成开发后,我们必须编译专家顾问。要做到这一点,在EA编辑器中运行 "文件-编译 "菜单命令,按F9或点击工具条按钮。作为成功编译的结果,将创建一个扩展名为*.EX4的程序可执行文件,它将被自动放置到/EXPERTS文件夹中。可以在客户终端的 "Navigator - Expert Advisors "窗口中查看已编译的Expert Advisors列表。如果编译不成功,专家顾问的图标将是灰色的。这意味着它不能被使用。
你在这里是错的。专家顾问是完全可行的。灰色也意味着没有*.MQ4源文件。大多数商业性的EA都是这样以编译的形式发布的。尝试删除任何专家顾问的来源,并重新启动终端 - 专家顾问将变成灰色。
此外,我建议用新的文件替换Mem.dll文件。我已将后者转换为新建立的197交易终端。在我网站的文件中,Mem.dll已经改成了新版本。
http://www.min2006.ru
好运!
如果我想逐一进入市场,我还需要指定一个价格吗?
你好,这是一个标准程序。所有的专家顾问都是这样工作的:首先,你得到当前的价格(TikKot函数),然后你在这个价格形成一个新的订单(NewPos)。如果你开了一个买入订单,你将采取卖出价格,如果你卖出订单,你将采取买入价格。请看我网站上的C++或Delphi的例子。在那里你可以找到职位空缺的变种。好运!
我无法回答任何具体问题。我还没有用Omega测试过这个库。显然,问题是库中的一个错误的函数调用。你是否为返回的数据数组预留了内存?我也可以建议你仔细调查MT4和库本身的日志(它工作时创建Protokol.dat文件)。 带有计算机号码的窗口只在演示版中弹出。好运!
这是如何做到的?
这是任何编程语言的标准程序。在欧米茄的文档中可以看到。你需要声明一个数组,以便其后续使用。例如,要获得历史上的报价,你需要2000-5000个数组元素。对于数组,在操作之前,我们需要使用Omega来分配内存中的必要空间。 你看到日志中的内容了吗?