我真的想学习MQL5,我应该从哪里开始? - 页 6

 
Grozir:

在网上搜索关于MQL5的书。它可能会派上用场。


MetaTrader 5交易平台的高级使用
© Timur Mashnin, 2016

这里的信息是否不够? 是否有一本书需要你去找?
 

停止拉动地球上的猫头鹰,扭曲的大师们....如果不成功,就没有合唱,但让我们回忆一下C)))

C是一种通用语言,MQL是一种依赖于平台的语言,OOP是一种编写程序 的方法,与挖代码的方法相同--不喜欢它,就寻找替代方案,并证明 "我的方法"(C)在帕累托效率上是合理的。


SZS: 不阅读文学作品的建议,在我看来是愚蠢的--拓宽思路一直是有用的,但似乎这个原则在这里也是有效的:"你知道的越少,你睡得越香!"。文学作品一直是有用的,因为它遵循了教授材料的方法(从简单到复杂),当然,那科学引子的方法也能取得奇妙的效果)))。

 
对于一个完整的主题研究和阅读书籍--有研究所,有计算机科学家的网站或其他。我认为一个人想学习,在专家或指标中使用的简单功能。
 
Alexsandr San:
信息还不够多吗? 还有别的书你应该去找吗?

如果你想读,你不一定要读,这纯粹是自愿的。

这不是一个有校外假期必读清单的学校)))

 

在研究了这个程序(外汇生成器)之后,我的大脑已经想出了这个程序是如何创建代码和荣誉的,审查了它的行动

图片来源


8天许可证 - 可以绕过

快照2

---------------------------------------------------

我现在试着安装它,这是一个愚蠢的程序。以前,我在程序中点击绿色按钮后,代码会出现在metadvisor中。

现在什么都没有了。

-------------------------------------

我不知道是不是因为我以前用的是mt4,现在用mt5试了一下,但当时用mt4的时候是可以的

------------------------------------------------------------------------------------------------

它不工作 - 我已经安装了MT4来检查这个愚蠢的程序。

图片来源

-----------------------------------------------

它工作了 - 我给了错误的文件夹路径 - 但是当你点击时,你需要快速获取temp.mq4代码,否则它会消失。

---在7年前没有消失

快照2

-------------------------------------

这就是它所创造的--而我正试图弄清楚什么东西在哪里。

//-------------------------------------------------------------
//  Etasoft Inc. Forex EA and Script Generator version 7.x   EA
//-------------------------------------------------------------
// Keywords: MT4, Forex EA builder, create EA, expert advisor developer

#property copyright "Copyright © 2014-2019, Etasoft Inc. Forex EA Generator v7.x"
#property link      "http://www.forexgenerator.com/"

#include <stdlib.mqh>
#include <WinUser32.mqh>

// exported variables
extern double BuyLots3 = 0.1;
extern int BuyStoploss3 = 20;
extern int BuyTakeprofit3 = 30;


// local variables
double PipValue=1;    // this variable is here to support 5-digit brokers
bool Terminated = false;
string LF = "\n";  // use this in custom or utility blocks where you need line feeds
int NDigits = 4;   // used mostly for NormalizeDouble in Flex type blocks
int ObjCount = 0;  // count of all objects created on the chart, allows creation of objects with unique names
int current = 0;   // current bar index, used by Cross Up, Cross Down and many other blocks
int varylots[101]; // used by Buy Order Varying, Sell Order Varying and similar



int init()
{
    NDigits = Digits;
    
    if (false) ObjectsDeleteAll();      // clear the chart
    
    
    Comment("");    // clear the chart
    return (0);
}

// Expert start
int start()
{
    if (Bars < 10)
    {
        Comment("Not enough bars");
        return (0);
    }
    if (Terminated == true)
    {
        Comment("EA Terminated.");
        return (0);
    }
    
    OnEveryTick1();
    return (0);
}

void OnEveryTick1()
{
    PipValue = 1;
    if (NDigits == 3 || NDigits == 5) PipValue = 10;
    
    IfHighestBar2();
    
}

void IfHighestBar2()
{
    if (iHighest(NULL, 0, MODE_HIGH, 10, current) == current)
    {
        BuyOrder3();
        
    }
}

void BuyOrder3()
{
    double SL = Ask - BuyStoploss3*PipValue*Point;
    if (BuyStoploss3 == 0) SL = 0;
    double TP = Ask + BuyTakeprofit3*PipValue*Point;
    if (BuyTakeprofit3 == 0) TP = 0;
    int ticket = -1;
    if (true)
    ticket = OrderSend(Symbol(), OP_BUY, BuyLots3, Ask, 4, 0, 0, "My Expert", 1, 0, Blue);
    else
    ticket = OrderSend(Symbol(), OP_BUY, BuyLots3, Ask, 4, SL, TP, "My Expert", 1, 0, Blue);
    if (ticket > -1)
    {
        if (true)
        {
            bool sel = OrderSelect(ticket, SELECT_BY_TICKET);
            bool ret = OrderModify(OrderTicket(), OrderOpenPrice(), SL, TP, 0, Blue);
            if (ret == false)
            Print("OrderModify() error - ", ErrorDescription(GetLastError()));
        }
            
    }
    else
    {
        Print("OrderSend() error - ", ErrorDescription(GetLastError()));
    }
}



int deinit()
{
    if (false) ObjectsDeleteAll();
    
    
    return (0);
}

附加的文件:
temp1.mq4.mq5  6 kb
 
Georgiy Merts:

...

就我个人而言,我完全看不出有什么不同--我所有的库都是这样写的,只要稍加修改就可以在C++中使用。

这可能意味着你没有完全使用C的功能,也没有使用mql的功能。

 
Evgeniy Zhdan:

也许你应该从BASIC开始,通过Pascal、Assembler、C+、C#逐步达到MQL5,然后才尝试写Hello world,并在评论中输出到图表。

汇编程序是必须学习的。没有它,你就不会成功。:)
 
Serhii Dielieu:
汇编员是必须的。你不能没有它。:)

如果你想走出沙盒,带着字典阅读是非常可取的)。

 
Dmitry Fedoseev:

这可能意味着你没有充分利用C的能力,也没有充分利用mql的能力。

这是很有可能的。

但我一再强调,代码必须简单透明,"像三分钱一样",各种技巧和 "特殊功能 "都必须非常谨慎地使用。

使用各种 "高级功能 "和 "技巧 "已经不止一次让我失去了生命。因此,我始终坚持 "不要不必要地创造新的实体 "的原则。 如果问题可以用标准的、成熟的方法来解决--就应该这样解决,而不要求助于新的奇特的方法。这个原则不止一次地在新版本发布时救了我,当时我在论坛上不时地嚎叫着 "他们破坏了以前的工作"。但是,当你看它时,你会发现它有相当不简单的代码,你必须试着去弄清楚......那么,为什么这段代码在做了修改后开始编译时出现了错误,这很令人惊讶呢?

当然,我们也不应该走到另一个极端,完全否认任何新事物。然而,在我看来,"健康的保守主义 "是非常有用的。

 
muhhacc ccc:
大家好。我想学习MQL5/ 你们能帮助我从哪里开始吗?有什么教程视频吗? 我找到了一些视频,但我不明白80%以上的内容,他们通过例子展示了如何编写EA(各种函数的例子等),我需要一些基础知识。 谢谢理解。


你必须从最后开始。

喜欢。

- 我有一个有利可图的策略,但我厌倦了一天24小时坐在显示器前,我需要一个机器人来代替我。

- 我无法在交易中获利,但只要我学会了MQL,我就会写一个机器人,它就会开始从网上抽钱。

))

我不知道用它做什么,你的目标是什么?