最高和最低可见报价 - 页 5

 
不幸的是,我们并没有所有的答案。
 
获取当前图形的垂直和水平尺寸(以像素为单位)目前是一项无法解决的任务 ? 雷纳特,我对你的理解是否正确?
 
获取当前图形的垂直和水平尺寸的像素是目前无法解决的任务 ? Renat 我对你的理解是否正确?

我的回答是对一般问题的一般性回答,"有些人已经被公然忽视了很长时间了。为什么?"

而且,确定屏幕尺寸是很基本的--你自己已经很清楚了,不是吗?

#import "user32.dll" int GetClientRect(int hWnd,int lpRect[]); //+------------------------------------------------------------------+ //| script program start function | //+------------------------------------------------------------------+ int start() { int rect[4]; //---- int hwnd=WindowHandle(Symbol(),Period() ); if(hwnd>0) { GetClientRect(hwnd,rect) ; Print("Left:",rect[0]," Top: " ,rect[1]," Right: " ,rect[2]," Bottom: " ,rect[3]); } //---- return(0); }
 
亲爱的Renat!

这段代码编译成功,但在执行时,在日志中显示以下信息。

2006.08.28 07:51:05 ____pixel EURUSD,M1: 删除
2006.08.28 07:51:05 ____pixel EURUSD,M1: 专家停止工作
2006.08.28 07:51:05 ____pixel EURUSD,M1: 不允许调用dll;'user32.dll'-'GetClientRect'
2006.08.28 07:51:05 ____pixel EURUSD,M1:加载成功。

用Windows XP和Win98检查过,结果相同。 建立195个。
 
"不允许调用dll;'user32.dll'-'GetClientRect'"一行是什么意思?
 
有罪的,我忏悔,我很抱歉。我允许导入 dll,一切都正常。

这是我的第一个同类剧本。我以为我的机器有故障,旧的操作系统,把user32.dll库复制到libraries文件夹,尝试了void GetClientRect, bool GetClientRect。一件简单的事情打开了...

我不会再重复这个错误了,我发誓。

非常感谢!
 
亲爱的开发者 !

当解决一个正向和反向转换问题时

pixel_Y -> quote, quote -> pixel_Y

出现了以下问题。

如果知道High 1.8600,Low 1.8400和垂直图表大小(像素500),如何确定垂直轴上可见的最大和最小报价值(在图中标记) 图表的比例是自动的。


|------------------------------------------------|<-???
|................................................|
|................................................|
|...........High 1.8600....................|
|................................................|
|................................................|
|................................................|
|................................................|
|................................................|
|................................................|
|............低点1.8400...................。
|................................................|
|................................................|
|------------------------------------------------|<-???
 
致斯拉瓦

引述你以前的答案。

如果刻度是自动的,可以通过在顶部和底部的最高和最低价格之间增加5%的差异来计算。<br / translate="no">
顺便说一下,这不是价格,而是最高和最低价格之间的像素数。


从低点到图表底部的距离和从高点到图表顶部的距离往往是不一样的,尤其是在小周期。

当从顶部到高处和从底部到低处增加相同数量的像素(5%)时,这怎么可能呢?
 
从低点到图表下限的距离和从高点到图表上限的距离往往不一致,特别是在小周期上。<br / translate="no">

为了不打扰开发者,我将回答这个问题。

我使用MT4已经一年了,但我从来没有见过这样的事情......
 
真实例子:欧元兑美元,M1

高 1.2729 最大可见值 1.2730 delta 0.0001
低点 1.2695 最小可见值 1.2690 delta 0.0005
原因: