为什么说MT4不好?

Discussion in 'MetaTrader' started by 曾戊庚, Jun 24, 2009.

  1. 个人觉得,只分析外汇的话,策略分析用mt4就足够了。
    MT4可免费下载,数据也免费,使用方便,编程更是相当容易。一般的功能都可实现。
    不知neo_cn老师为什么说MT4不好?
     
  2. 自己觉得够好就不必管别人说什么了,不过你既然问了我就说说,我说mt4不好是有以下原因的:
    1,mt函数很少,编程并不方便。
    2,mt4语言很c,非专业上手非常不容易。
    3,mt4不支持多周期调用,因此跨周期的应用你就做不了。
    4,mt4不支持自定义时间周期,只提供5的倍数。
    5,mt4的ea测试引擎存在的缺陷使一些垃圾ea能跑出漂亮的测试曲线,以至于不知有多少人既被人骗钱买ea,又为这些ea亏钱。
    6,mt的数据质量,你把它选项中的显示空缺数据开关打开(如果我没记错,mt有这个功能的话),或者你把mt4的数据导入到能显示空缺数据的软件的话,你会看到很多的数据缺失。

    mt4的优点也不少,但是对我来说我不想在一个不能满足我未来需求的软件上浪费青春。
     
  3. 原来老师说的是这六个方面。
    1、这个问题不大,个别常用的函数自编一下就行了;
    2、不是问题;
    3、支持多周期啊, 我的EA就同时调用了好几个周期;
    4、我觉得不必再自定义周期, 周期间隔最大的是6,足够用了;
    5、不好说;
    6、这可能与服务器有关吧。
     
  4. 5,mt4的ea测试引擎存在的缺陷使一些垃圾ea能跑出漂亮的测试曲线,以至于不知有多少人既被人骗钱买ea,又为这些ea亏钱。

    这个很重要,请有经验的海友证实一下,谢谢!
     
  5. 我所知道“漂亮曲线”是因为EA参数调整至适合过去的历史数据,但说“测试引擎存在缺陷”实在没听过哦,只知道越来越多broker使用Metatrader.......
    是不是这样他们好做手脚?不清楚...
     
  6. 对于第5点, 我的体会是, 不好的EA只是亏得更快,还从来没体会到随便一个垃圾EA在测试时赚钱的情况。至于有人说如果你的EA测试时亏钱, 把买卖信号反过来就能赚钱, 这种说法更是可笑,我也试了一次, 结果是亏得更快(如果不考虑点差,也许还差不多)。
     
  7. 3、確實不行。雖然可以調用多周期指標,但無法同時測試多周期的報價數據,多貨幣也不行。
    5、比如那種scalper的EA,FapTurbo,在歷史測試時很漂亮,實戰時就虧損了。因為測試時的點差是固定的,實戰時點差是浮動的,而且MM特別針對這個EA,在行情冷淡時擴大點差至其無法下單。還有一些EA,宣傳時只截取某個時間段某幾月或某年的曲線圖,比如在2008年的行情跑得很漂亮,2007以前則慘不忍睹,很不穩定。
    6、FXDD里JPY在1992.02.05的報價是1966.08,歷史真出現過這樣的報價嗎?
     
  8. 我看一个台湾人说的:
    “MetaTrader的MQL4语言是非常受欢迎的交易系统语言。 而该语言的语法特征是像C\Java 。而该语言的语法特征是像C\Java 。 很多人声称该语言让有编程背景的人会容易上路;但是,相对没有编程经验的人来说,很多人都宁可转向去学EasyLanguage ( Tradestation.com 的编程语言) 去了。很多人声称该语言让有编程背景的人会容易上路;但是,相对没有编程经验的人来说,很多人都宁可转向去学EasyLanguage ( Tradestation.com的编程语言)去了。

    一般系统交易开发者学习系统交易历程一般系统交易开发者学习系统交易历程


    开始入门可能是用TradeStation.com 的EasyLanguage,感觉容易上手但是最后发觉缺乏可控性,更比较容易发现无法debug 的bug;开始入门可能是用TradeStation.com的EasyLanguage,感觉容易上手但是最后发觉缺乏可控性,更比较容易发现无法debug的bug;
    系统交易者希望更深化控制交易逻辑,发现EasyLanguage 缺乏弹性的时候,会发现MetaTrader 的MQL4 更得心应手;系统交易者希望更深化控制交易逻辑,发现EasyLanguage缺乏弹性的时候,会发现MetaTrader的MQL4更得心应手;

    对于不懂得编程的人,他们会改为应用费用比较高昂的NeoTicker;对于不懂得编程的人,他们会改为应用费用比较高昂的NeoTicker;
    最尖端的系统交易方案,大概就是系统交易者直连经纪行接口,用Java/C/C++ 写的、富有弹性的语言来控制交易逻辑和下单。最尖端的系统交易方案,大概就是系统交易者直连经纪行接口,用Java/C/C++写的、富有弹性的语言来控制交易逻辑和下单。 ”

    不知道是否如此?
     
  9. 1.mt函数很多
    2.很c。
    3.支持.
    4.支持,变通下。另外,交易需要古怪的周期干什么呢?呵呵。另外,mt5可以自定义周期。
    5.策略问题,不是软件问题。或者说这是测试本身的问题。比如滑点这些,不管什么软件都无法克服的。
    6.很少有数据缺失。如果有,有些经纪商能提供完整的不缺失的数据下载。导入就可以了。

    好久没来了。

    mt5的推出,必将在交易领域引发新的革命。
     
  10. 是的。mt的语言有点难,实现同样的功能代码量也庞大多了。比另外几个难多了,因为不是一个数量级的难度。比如mt有数组,很少有开发语言有数组的。这样,能自由控制很多复杂的算法。简单的说,这是真正的编程语言。

    我带过很多跟我学习mt的人,好像没有一个能坚持下来,有几个能编写代码。但是有基础的,比如懂数组,变量的,一般1周内,就很熟练的编程开发了。

    个人感觉,mt的开发语言,是完美的。为了完美,付出更多的劳动,应该不亏。

    你甚至能用mt的开发语言,做一个俄罗斯方块,或者聊天工具,尽管这个没有必要。但是,技术狂人,一般追求完美。我就是。。。
     
  11. 谢谢mailema解惑!技术狂人,很好啊,我是佩服的,呵呵。

    当初就是评估了一下,觉得竞争不过你们这些高手,做了别的。4年时间没正儿八经编程了,现在看起来还是要拾回。:)
    去年搬家的时候把一箱子以前包括念大学时候看的计算机书,扔了多半,有本《编程珠玑》印象最深刻。大学自己学了两年多,工作后恁没怎么用上。好在一些有用的C,javascript,C++,SQL,dotNet资料在电脑上还留着,可以复习下。

    主要想用TradeStation/MT来测试交易系统,并不是想全自动交易。之前做股票,用飞狐。既然要测试,也就得先在TradeStation/MT上用其语言建立其系统。但精力有限,只选其一。
     
  12. 找個能快速上手的就行,這點MT4做得不錯,而且免費。
    不要把程序員的工具執迷帶入交易。一個高效復雜的計算機算法,和一個簡單的傳統交易策略,哪一個離市場更近?
    如人以手,指月示人;彼人因指,當應看月。
     
  13. MT4没有什么不好,熟悉C, Java, C#, VB中任何一种,上手都很快。
    随着MT5的出现,就更加像一种成熟的编程语言了。再加上一直都有的DLL接口,几乎是没有什么不能做的。

    不明白为什么他们不从一开始就提供一个C或者VB的函数库,然后任何人都可以直接使用C或者VB。
    不过这就有点像rightedge, ninjatrader这些完全基于.net的平台了......

    MT4/MT5其实也并不比.NET那些东西难到那里去。关键在于交易策略。有一套有效策略才是最大的。
     
  14. 1. MT4的语言太简单. MT5将支持更复杂的C++.
    2. MT4的EA 计算太慢, MT5将采用多线程实时计算EA
    3. MT4的BAR 的INDEX 倒着数, (其它软件大都正着数,这是最大的缺点), 这样导致每当实时产生一个新的BAR. 所有的INDEX全都变了. 所有的EA 又要重新算一遍. 浪费时间, 对数量太多的BAR, 速度会很慢.
     
  15. 不熟悉C, Java, C#, VB中任何一种,上手都很快。现在我看C的例子开始懂了。很多行情分析软件都是用自己的EasyLanguage,可惜弹性太小,求人家帮你写个DLL调用,还不如直接学C,没调试基础和动力,学C远比MQL难。
     
  16. 个人观点:有人搞废纸搞到贫困潦倒,有人靠搞废纸致富。关键不在于废纸怎么样,而在于从业者是否能将行业优势挖掘与发挥至极。TS与MT4亦如此,不要看别人,自己用着最舒服的就是最好用的!
     
  17. mt4的策略测试过程中,有若干数据精度选项,其中最接近真实的是按照一分钟或者tick数据进行测算,但是不要以为选中这个选项就可以,你还要下载测试时段的1分钟数据或者tick数据,否则还是按照收盘价计算的。

    当数据不准,mt4会自作主张安排hloc的出现顺序,导致剥头皮和趋势类的策略在mt4上产生错误的但美丽的测试结果。

    这么说够具体了吗?
     
  18. 用不好,驾驶宝马也会撞车。
     
  19. 如果EA策略是基于closed bar的,选open price only就可以了,基于tick的才需要every tick模式,如果下了一分钟数据,那测试结果也是可信了吧。