我正在使用metatrader4,我可以获得任何信息'但'来自btc-e的市场数据http://docs.mql4.com/constants/environment_state/marketinfoconstants
即
double pending = MarketInfo(Symbol(),MODE_PENDING);
MessageBox(
DoubleToStr(pending)
);
就像此图表右侧的市场数据https://bitcoinwisdom.com/markets/btce/ltcusd,所有待处理的买入/卖出订单,相同的市场和所有内容。 如何使用MQL4转储待处理卷?
答案 0 :(得分:4)
首先,让我们从< 代码> -snippet mis-concept开始
如提供的< 代码> -snippet中所示,存在主要错误/错误概念。虽然MQL4代码的语法是编译器阶段可行的(它被处理成可操作的.ex4运行时代码),但结果主要是错误的。
MQL4有很多枚举常量,过去在MetaLang.exe编译阶段没有上下文使用检查。 (是的,不得不说"曾经有过",因为MetaQuotes,Inc。最近进入"隐藏" -language修改已经改变了很多系统行为,即使在MQL4的语法中,用一个颇具Orwel风格的" New" -MQL4来调用它,所以在移动沙子的条件下,人们必须更加注重细节...)
如上所述,ENUM_CONST类似于您尝试使用 MODE_PENDING
,在语言中具有公平的含义,但这并不保证除了编译时替换值之外的任何内容int
。因此,可以在任何地方声明 MODE_HIGH
(btw == 2),其中 MODE_SMMA
(btw == 2)也会适当的使用环境。这些只是编译器解析阶段的符号替换。
其次,让我们关注您的目标
如您所见,您希望以某种方式运行一系列有关总量和数量的知识。挂单的相应大小,在表格上等待"在市场活跃之前。这是一项复杂而重要的任务。 FX没有"中心"市场,收集全球总和。
说到" 音量"这开启了另一个混乱。 Volume
,在MQL4中实现的是一个离散的整数值,与相应柱内的累计价格变化量相关。因此,在一个NewBarEVENT上,Volume[0] == 1
(第一个价格 - 报价刚刚到达并且已经带来了一个新的BarBEEENT本身的指示),这个值在整个活动条中逐步增加([0] )持续时间。人们可能还会注意到,对于没有价格报价的酒吧"来自Market",MT4在图表中没有显示任何条形图(缺少蜡烛)。
因此,请务必小心使用 音量 这个词,以确保获得完整的使用环境。
就您的帖子而言,您的意图是获得 OrderBook LEVEL-2 a.k.a。市场深度。
虽然这是可能的,但这需要更多的精力来组装,而不仅仅是MQL4代码中的单行代码。
第三,让我们完成工作
可能是,您的经纪人已准备好API服务,您可以收集&处理L2 DoM。
如果没有,
还有其他来源可以构建&维护L2 DoM,但是要验证您的Trade-Execution-Venue的相关性,因为有些人可能会在您的模型交易时通过MarketMaking角色使您的策略瘫痪。
您的经纪人 - "当地" L2 DoM规则。 永远。不值得损失来测试相反的情况。
如果为此任务做好准备,请准备好在超低延迟架构上运行,因为L2 DoM演进动态中的亚毫秒级别并不罕见。
一旦"在路上",您很快就会注意到,MQL4的计时器分辨率高于 1毫秒。
因此,你的计算策略来查询+收集+清理+进程+发布+使用你自己的本地L2 DoM映射从一开始就有麻烦(没有谈到由于端到端传输导致的地图主要偏差延迟)。
(请记住,MQL4只有几个线程,完全不受你的控制。因此必须设计一个精心的多处理设计,以便在非阻塞附近操作 - 实时模式。拥有相同的集成系统,您的项目确实非常令人兴奋地实现目标,相信我:o)
)
值得做好工作。
答案 1 :(得分:0)
有两种卷类型。一个是iVolume,然后有iOBV或余额。
这是卷文档:
http://docs.mql4.com/series/ivolume
平衡音量非常适合在一段时间内根据您的符号定位平均音量。拥有长期的obv可以产生一种趋势。
这是obv:
http://docs.mql4.com/indicators/iobv
现在关于音量。没有办法确定等待'它总是一个历史指标。
如果你有一个拥有10 ltc的人想要以7.50的价格卖出而且有人想要以7.49的价格购买10并且没有订单更改则没有订单,因为一个人等待另一个,谁知道需要多长时间。
有了这样说,你可能想看看买卖方的未平仓合约,并可能推断潜力。
最后一点。 LTC和BTC很难挂钩趋势。我看过技术问题,我可以说的是,与LTC OR BTC相比,股票看起来像一只驯服的小猫。
最后。我打赌你不知道Stack Exchange有一个比特币网站。我打赌这个问题会在那里得到更多的播放。 http://bitcoin.stackexchange.com
祝你好运!