客户是否需要一个内置的简单编程语言? - 页 4

 
Slava:

看在上帝的份上。尽早进入这个利基市场,而不是晚一点。但要准备好支持非程序员用户。

所以,这就是我所理解的这个主题......所有的建议和要求都是对主题发起人的。

 

就个人而言,我同意没有人需要一种 "简单的编程语言 "的观点。至少有一定能力理解编程的人--他们会很快学会一种 "复杂 "的语言。而那些想要 "几何学的皇家道路 "的人,会在 "简单的语言 "中发现大量的问题。

P.S.

我没有赶上MQL II。

我在MQL5的最开始,由于我在C++方面很有经验,所以我马上开始尝试使用它,尽管MQL4在那时还不支持OOP。时间表明,我是对的。

 

升级编程语言的想法是相关的,而且很可能是可行的。记得第一个微处理器设备是如何进行编程的。然后是Assembler,之后是大量的高级语言(Basic、Fortran、C...)。在每个阶段,目标是简化用户和技术设备之间的互动过程。而这些目标已经成功实现。显然,现在是进一步深化和完善已经取得的成果的时候了。在几乎所有的现代软件中都可以看到许多或多或少成功的尝试,将编码过程隐藏在清晰和容易获得的工具之下。例如,Excel或Powerpoint模板、Access宏、Matlab Simulink可视化编程,等等。这些工具基本上允许用户在远离编程的情况下,解决以前没有程序员根本无法解决的任务。而这是一件非常好的事情。交易领域可能也不例外。迟早有一天,会从MQL的编程过渡到其他更简单、更清晰的算法实现方式。因此,朝这个方向的努力只能受到欢迎。我祝愿阿列克谢在解决这个问题上取得成功。即使是问题的提出(顺便说一下,非常专业),也已经是对解决这个非常困难但重要的任务的巨大贡献。

 
Serqey Nikitin:

据我所知,这就是这个主题的内容......所有的建议和要求都要向主题发起人提出......。


呃,我写了一个非常简单的方法来给用户提供一个原始的自动化工具,但后来,像往常一样,谈话朝着创造一种新的语言方向发展了))。

我将借助于例子来描述这种情况。我们有一个交易小组,就像那些充斥市场的克隆人一样。通常情况下,他们允许你做最简单的事情。

现在让我们想象一下,在面板中我们可以设置条件,例如根据市场情况选择策略。

例如,我们已经越过了通道的下限。这是一个突破还是一个假突破?我们不知道,我们也没有时间坐在显示器前,我们有一些生意要做。

好的,我们设置一个条件,如果价格变化的斜率超过了指定的阈值,而且价格已经跌破了*.*****,我们就把交易模式 转为卖出。如果斜率是正的,并且价格在通道限制内上升到*.*****,我们就开启通道内的交易模式。

这是一个非常近似的描述。我们不应该发明任何语言,普通用户不会研究它,或者,正如斯拉瓦正确指出的那样,他在支持方面会有很多麻烦。你必须专注于最愚蠢的用户,而且有很多这样的用户。我见过很多人不明白文件系统是如何工作的,也不知道程序安装在哪里......对他们来说,计算机的世界仅限于桌面上的图标。这就是我们应该针对的那种人。

 
George Merts:

至少有一定能力理解编程的人--他们会很快学会一种 "复杂 "的语言。但那些想要 "在几何学中走皇家道路 "的人,会在 "简单的语言 "中发现很多问题。

正是如此。你说得再好不过了。

 
Serqey Nikitin:

这是那些不想改变任何事情的人的借口......把你不想解决的事情当作公理是非常容易的......。

你只是从你自己的钟楼看一切。

有两种类型的用户。

前者包括90-99%的人,他们太懒了,不愿意做三次鼠标点击,而不是两次。其余的,那些可能对这种语言感兴趣的人,也很有能力理解mql5。

 
Комбинатор:

你只是从你自己的钟楼看一切。

有两种类型的用户。

第一种类型包括90-99%的用户,他们太懒了,无法进行三次鼠标点击而不是两次。其余的人,那些可能对这种语言感兴趣的人,都很能理解mql5。


切换到mql5有什么帮助? 用mql5写起来容易吗? 代码少吗?

 
igrok333:

那么改用mql5的好处是什么呢?用它写东西容易吗?代码少吗?

好的,到mql4。可以吗?

 
这里是一个在MQL4中的交易开口
OrderSend(Symbol(),OP_BUY,0.01,Ask,30,0,0)
一行。


这里有一个关于MQL5的交易开口
   MqlTradeRequest request;
   MqlTradeResult result;

   Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK); 

   request.action=TRADE_ACTION_DEAL;
   request.symbol=Symbol();
   request.volume=Lot;
   request.deviation=Slip;
   request.type_filling=ORDER_FILLING_AON;
   request.sl=SL;
   request.tp=TP;
   request.type=ORDER_TYPE_BUY;
   request.price=NormalizeDouble(Ask,Digits());
   OrderSend(request,result);  
13行。

在正常的编程语言中,当正常方法无法完成的时候,就会触发op,但在这里--打开一个交易是交易中最简单的操作。
这不是一种蹩脚的编程语言吗?
 
igrok333:
这是在Mql4中开的一个交易
一行。


这是在Mql5中开的一个交易
13行。

在正常的编程语言中,当你用正常的方法不能做任何事情时,就会触发一个操作。
这不是一种蹩脚的编程语言吗?

这东西会让你重新获得生活的乐趣,再简单不过了 ))