请观看如何免费下载自动交易
请在Twitter上找到我们!
加入我们粉丝页
有趣的脚本?
因此发布一个链接 -
让其他人评价
喜欢这个脚本? 在MetaTrader 5客户端尝试它
显示:
264
等级:
(5)
已发布:
index.mq5 (2.16 KB) 预览
index.mqh (19.47 KB) 预览
MQL5自由职业者 需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务
这是我在 mql5 中实现的 json 序列化和反序列化功能
您也可以使用 npm 包管理器下载
npm i mql5-json
示例:
 #include "node_modules/mql5-json/index.mqh"

void OnStart () {
    JSON::Object* json1 = new JSON::Object()
        .setProperty( "number" , 123456 )
        .setProperty( "string" , "text" )
        .setProperty( "boolean" , true )
        .setProperty( "object" , new JSON::Object()
            .setProperty( "number" , 123456 )
            .setProperty( "string" , "text" )
            .setProperty( "boolean" , true )
            .setProperty( "array" , new JSON::Array())
        )
        .setProperty( "array" , new JSON::Array()
            .add( true ) // 布尔型
            .add( 123456 ) // 数量
            .add( "string" ) // 字符串
            .add( new JSON::Object()
                .setProperty( "number" , 123456 )
                .setProperty( "string" , "text" )
            )
            .add( new JSON::Array()
                .add( true )
                .add( 123456 )
                .add( "string" )
            )
        );

     string exampleText = json1.toString();
     Print (exampleText);

    JSON::Object* json2 = new JSON::Object(exampleText);
     string objectKeys[];
    json2.getKeysToArray(objectKeys);

     if (
        json2.hasValue( "array" )
        && json2.isArray( "array" )
        && json2.getArray( "array" ).getLength() > 4
        && json2.getArray( "array" ).isBoolean( 0 )
        && json2.getArray( "array" ).getBoolean( 0 ) == true
        && json2.getArray( "array" ).isObject( 3 )
        && json2.getArray( "array" ).getObject( 3 ).isString( "string" )
        && json2.getArray( "array" ).getObject( 3 ).getString( "string" ) == "text"
        && json2.getArray( "array" ).getObject( 3 ).isNumber( "number" )
        && json2.getArray( "array" ).getObject( 3 ).getNumber( "number" ) == double ( 123456 )
    ) {
         Print (json2.toString());
         Print (json2.toString() == json1.toString());
    }

     delete json1;
     delete json2;
}

作者: Kuzme Shevelev (seffele@gmail.com) github: https://github.com/Senails/mql5-json


由MetaQuotes Ltd译自俄语
原代码: https://www.mql5.com/ru/code/53107

虚假的分手 虚假的分手

False Breakouts.mq5"(假突破.mq5)指标是 MetaTrader 5 的一种工具,可根据对支撑位和阻力位的假突破,直观地识别和标记买点和卖点。它使用缓冲区显示买入(蓝色)和卖出(红色)箭头、支撑(蓝色)和阻力(红色)线,以及市场顶部和底部的附加箭头。该指标的主要逻辑包括根据蜡烛图的最高价和最低价检测顶部和底部,动态更新支撑位和阻力位。当价格突破支撑位或阻力位后再返回时,该指标会分别生成买入或卖出信号。对于根据虚假突破操作策略的交易者来说,这是一个非常有用的工具。

MeanReversionTrendEA MeanReversionTrendEA

EA 根据趋势和均值回归信号自动交易,参数经过验证。

计时器 计时器

计时器的回调接口

阿尔法趋势 阿尔法趋势

这是一个用于确定市场趋势、支撑和阻力水平的指标。 如果有成交量数据,则使用 MFI 计算,如果没有,则使用 RSI 计算。 势头:RSI 和 MFI 波动率:ATR