是时候将图书馆转换为MQL5了 - 页 6 1234567891011121314 新评论 Andrey F. Zelinsky 2012.04.16 08:47 #51 victorg:实际上,直接获取数据并无不妥。 来吧,讲故事的人。安全是最重要的。当带有EA和指标的终端一天24小时运行,并且一切都 "挂 "着真金白银和访问的时候,情况就越是如此。在这种情况下,程序员不应该害怕使用第三方dll,而 "阴险地 "使用这种dll的人--"切腹"。 Andrey Dik 2012.04.16 08:48 #52 我们需要把 "做得过多不如做得过少 "真正适用和有用的领域分开。在我看来,"安全第一 "的原则应该只适用于市场和云。买方支付的是一种自然安全的产品,因此是封闭的,而且没有办法检查产品的安全性。因此,市场必须对所有产品的安全性给予买方100%的保证。而在云计算的情况下,所有的云计算电脑都必须100%防止恶意软件。而在所有其他情况下,不涉及通过市场分销软件产品和通过该服务购买软件产品,以及使用云,使用未经证实的dll的全部责任由用户承担。有了这种方法,目前由于 "安全第一 "而导致的MQL5语言 性能和功能下降的许多问题就可以避免了。 Andrey F. Zelinsky 2012.04.16 08:54 #53 joo:因此,市场有义务向客户提供所有产品安全的100%保证。 你如何想象这一点呢?你作为一个卖家,从MK公司租了一个市场,要求房东对你的产品安全100%负责,同时关闭了dll中的一些代码。荒谬的。 Andrey Dik 2012.04.16 08:58 #54 abolk: 你是如何设想的?你作为一个卖家,从MK公司租了一个市场,要求房东对你的产品安全负100%的责任。这很荒唐。市场已经给出了产品安全的保证,因为它禁止产品使用外部dlls。而MQL5程序 本身在终端的安全内部沙盒中工作。 你不知道这件事? Renat Fatkhullin 2012.04.16 09:36 #55 victorg: 我假设你将不得不改变很多东西。而你只是尝试一下。 合理的DLLs最初是为与其他系统集成而编写的,因此具有原始函数形式的简单外部接口。他们的头文件很简单。实际上,直接访问数据并没有什么问题。毕竟,MetaTrader 本身可能是用C/C++编写的,并没有什么。此外,链接器通常甚至允许汇编插入,这也是可以的。请记住,在Windows下运行的MetaTrader 直接或间接地使用了大量的系统dlls,这也没有什么问题。 恐怕你根本没有参与安全对话,不知道我们在谈论什么。我认为你不能剥夺用户的选择权。 我真的很喜欢这样的选择,例如,我可以拿着ALGLIB-dll 和它的本地头文件,使用一个可靠的库,而不用 "弄脏我的手",只是向MQL 编译器指出这个头文件是C++ 而不是MQL。以库为例,使用从头文件中导出的函数,并稍作修改(如果需要的话)。认为你可以从不安全的C/C++语言中提取任何*.H文件并在另一种(甚至更安全的)语言中使用,这完全是对语言的误解。你可以梦想,但你不能要求。ALGLIB库已经被移植到MQL5,并将在源代码中提供。可能会出现这样的问题--如果这个库是恶意的、危险的怎么办?但我已经决定自己使用它。问这个问题几百万次,以了解MetaTrader终端用户的数量,并评估这几百万受访者的思维质量和责任。这就是为什么我们要照顾到环境的原始安全。换句话说--MQL 可以是你想要的安全,但如果我敢使用外部的东西,那就是我个人的问题。 使用DLL - 个人使用没有问题。 Victor 2012.04.16 11:41 #56 Renat:认为可以从不安全的C/C++语言中提取任何*.H文件并在另一种(甚至更安全的)语言中使用,这完全是对语言的误解。梦想是可能的,但要求是不可能的。ALGLIB库已经被移植到MQL5,并将在源代码中提供。 也许我徒劳地表达了我的意见(顺便说一下,我没有要求什么)。而关于对语言的不理解,你说得很对。我读得越多,理解得越少。我不明白为什么如果你为mql5 重写ALGLIB,然后用外部编译器(visualc)将其编译成DLL,那么这个库会比直接将库的原始源代码一次性编译成DLL 更安全?嗯,好吧。就这样吧。 Rashid Umarov 2012.04.16 11:44 #57 victorg: 我不明白为什么如果你把ALGLIB 改写成mql5,然后用外部编译器(visualc)编译成一个DLL。 你有点搞错了。在MQL5中重写的设计不是使用DLL,而是直接在MQL5源代码中包括所有必要的数学包。 Mykola Demko 2012.04.16 11:52 #58 Renat: 我们已经做了大量的工作来微调MQL5编译器,使其更容易转换用其他语言编写的现有库。 而MQL5语言的 发展仍在继续。预计新的功能很快就会出现,包括一个强大的代码分析器。 我们现在有两项任务要完成。 1)选择有用的第三方库进行转换 2)召集志愿者实施转换项目(我们将提供资金)。 我们希望从潜在项目的清单开始。 请帮助提供链接和简短的描述。由于ALGLIB已经被移植了,显然关于这个话题的主要问题是"用户希望看到其他什么开源库?" Renat Fatkhullin 2012.04.16 11:54 #59 Urain: 由于ALGLIB已经被移植了,显然这个话题的主要问题是 "用户希望看到其他什么开源库?是的,我在我的第一篇文章中说得很清楚。我们现在面临着两个挑战。 1)选择有用的开放源码库进行转换 Victor 2012.04.16 12:02 #60 Rosh: 你有点搞错了。在MQL5中重写的设计不是使用DLL,而是直接在MQL5源代码中包含所有必要的数学包。 对不起,对于承诺的直接从元编辑器将C/C++ 代码编译成dll的能力,我真的感到困惑。但我还是不明白,既然它(库)已经可以作为DLL使用了,为什么还要移植呢?原来--我在商店里买了一本书,在阅读之前,先把它誊写在一个笔记本上。我一定是又弄错了什么。我不会再写了。 1234567891011121314 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
实际上,直接获取数据并无不妥。
我们需要把 "做得过多不如做得过少 "真正适用和有用的领域分开。
在我看来,"安全第一 "的原则应该只适用于市场和云。买方支付的是一种自然安全的产品,因此是封闭的,而且没有办法检查产品的安全性。因此,市场必须对所有产品的安全性给予买方100%的保证。而在云计算的情况下,所有的云计算电脑都必须100%防止恶意软件。
而在所有其他情况下,不涉及通过市场分销软件产品和通过该服务购买软件产品,以及使用云,使用未经证实的dll的全部责任由用户承担。
有了这种方法,目前由于 "安全第一 "而导致的MQL5语言 性能和功能下降的许多问题就可以避免了。
因此,市场有义务向客户提供所有产品安全的100%保证。
你是如何设想的?你作为一个卖家,从MK公司租了一个市场,要求房东对你的产品安全负100%的责任。这很荒唐。
市场已经给出了产品安全的保证,因为它禁止产品使用外部dlls。而MQL5程序 本身在终端的安全内部沙盒中工作。
你不知道这件事?
我假设你将不得不改变很多东西。
而你只是尝试一下。
合理的DLLs最初是为与其他系统集成而编写的,因此具有原始函数形式的简单外部接口。他们的头文件很简单。
实际上,直接访问数据并没有什么问题。毕竟,MetaTrader 本身可能是用C/C++编写的,并没有什么。此外,链接器通常甚至允许汇编插入,这也是可以的。请记住,在Windows下运行的MetaTrader 直接或间接地使用了大量的系统dlls,这也没有什么问题。
我认为你不能剥夺用户的选择权。 我真的很喜欢这样的选择,例如,我可以拿着ALGLIB-dll 和它的本地头文件,使用一个可靠的库,而不用 "弄脏我的手",只是向MQL 编译器指出这个头文件是C++ 而不是MQL。
以库为例,使用从头文件中导出的函数,并稍作修改(如果需要的话)。
认为你可以从不安全的C/C++语言中提取任何*.H文件并在另一种(甚至更安全的)语言中使用,这完全是对语言的误解。你可以梦想,但你不能要求。
ALGLIB库已经被移植到MQL5,并将在源代码中提供。
可能会出现这样的问题--如果这个库是恶意的、危险的怎么办?但我已经决定自己使用它。
问这个问题几百万次,以了解MetaTrader终端用户的数量,并评估这几百万受访者的思维质量和责任。
这就是为什么我们要照顾到环境的原始安全。
换句话说--MQL 可以是你想要的安全,但如果我敢使用外部的东西,那就是我个人的问题。
认为可以从不安全的C/C++语言中提取任何*.H文件并在另一种(甚至更安全的)语言中使用,这完全是对语言的误解。梦想是可能的,但要求是不可能的。
ALGLIB库已经被移植到MQL5,并将在源代码中提供。
也许我徒劳地表达了我的意见(顺便说一下,我没有要求什么)。而关于对语言的不理解,你说得很对。我读得越多,理解得越少。我不明白为什么如果你为mql5 重写ALGLIB,然后用外部编译器(visualc)将其编译成DLL,那么这个库会比直接将库的原始源代码一次性编译成DLL 更安全?
嗯,好吧。就这样吧。
我不明白为什么如果你把ALGLIB 改写成mql5,然后用外部编译器(visualc)编译成一个DLL。
我们已经做了大量的工作来微调MQL5编译器,使其更容易转换用其他语言编写的现有库。
而MQL5语言的 发展仍在继续。预计新的功能很快就会出现,包括一个强大的代码分析器。
我们现在有两项任务要完成。
1)选择有用的第三方库进行转换
2)召集志愿者实施转换项目(我们将提供资金)。
我们希望从潜在项目的清单开始。 请帮助提供链接和简短的描述。
由于ALGLIB已经被移植了,显然关于这个话题的主要问题是"用户希望看到其他什么开源库?"
由于ALGLIB已经被移植了,显然这个话题的主要问题是 "用户希望看到其他什么开源库?
是的,我在我的第一篇文章中说得很清楚。
我们现在面临着两个挑战。
1)选择有用的开放源码库进行转换
你有点搞错了。在MQL5中重写的设计不是使用DLL,而是直接在MQL5源代码中包含所有必要的数学包。
对不起,对于承诺的直接从元编辑器将C/C++ 代码编译成dll的能力,我真的感到困惑。
但我还是不明白,既然它(库)已经可以作为DLL使用了,为什么还要移植呢?原来--我在商店里买了一本书,在阅读之前,先把它誊写在一个笔记本上。
我一定是又弄错了什么。我不会再写了。