如何编码? - 页 273

 

未执行takeprofit

有两个可能的原因。

首先,止盈可能被认为离开盘价 太近,经纪人不接受。

检查交易,看看止盈是否有一个值。

第二,卖出交易在卖出价退出,所以卖出价必须达到止盈水平。

你的经纪人在那个时间段对该货币对的点差是多少?

这将导致实际退出是在买入价-点差。

罗伯特

 
LuisAY:

我想知道如何阅读这些浅蓝色的圈圈。

有什么代码样本可以给我指出正确的方向吗?

提前感谢。

指标名称不是一个注释。

由于名称是可见的,你可以使用

double MaxValue, MinValue;

int WindowNum = WindowFind("Volume"); // 如果没有找到则返回-1

如果(WindowNum >= 0)

{

MaxValue = WindowPriceMax(WindowNum)。

MinValue = WindowPriceMin(WindowNum)。

}

希望这有帮助。

BTW,当您打开MT4编辑器时,有一个名为Navigator的窗口,其中列出了MT4中的函数,并附有如何使用它们的说明和示例。

罗伯特-希尔

专业的MT4程序员

 

[langtitle=de]takeprofit未执行[/langtitle] 。

MrPip:
有两个可能的原因。

首先,止盈可能被认为离开盘价太近,经纪人不接受。

检查交易,看看止盈是否有一个值。

第二,卖出交易在卖出价退出,所以卖出价必须达到止盈水平。

你的经纪人在那个时间段对该货币对的点差是多少?

这将导致实际的退出是在买入价-点差。

罗伯特

[lang=de]谢谢你的快速回复。

我有一个ECN经纪人(FXOpen)(5位数)。我认为你关于点差的说法是正确的。但它是一个恒定值102(=(Ask - Bid)*(1/Point)),并且在运行策略测试器时 不会一直变化。为什么?而在实盘系统中,点差几乎一直在变化。此外,为什么我没有收到OrderSend Error 130?

谢谢你的帮助[/lang]

 
MrPip:
指标名称不是一个注释。

由于名称是可见的,你可以使用

double MaxValue, MinValue;

int WindowNum = WindowFind("Volume"); // 如果没有找到则返回-1

如果(WindowNum >= 0)

{

MaxValue = WindowPriceMax(WindowNum)。

MinValue = WindowPriceMin(WindowNum)。

}

希望这有帮助。

BTW,当你打开MT4编辑器时,有一个叫Navigator的窗口,它列出了MT4中的函数,并附有如何使用它们的说明和样本。

罗伯特-希尔

专业的MT4程序员

正是 我一直在寻找的,......只是希望帮助文件的技术编写者有你在例子中展示的常识。

我的另一个问题是:在自定义指标 中作为名称的注释或说明被命名为 "IndicatorShortName "并持有一个值,现在,我想读取这个值。我可以找到一个办法,当我声明时,让一个变量也持有这个值,但对我来说,一定有办法使用 "IndicatorShortName "的值,这是常识。

谢谢

 

哈哈,找到了 -- 我所做的编码(但我今天没有使用)。

它不应该给出一个SUGGESTION ENTRY,直到观察到一些整合(所以它是一种智能 -- 虽然使用了简单的逻辑)。

重新措辞你的问题 -- 不清楚

tiny.cc/imtran

====

这是一个挖掘,以显示我做了一些编码。

我在这个指标上花了一个月的时间(我自己做的)。

它的作用是使用白色评论文本

来告诉我在什么价位上下限价单

让你有这3个链接,如果你喜欢看东西,打开METAEDITOR IDE,学习MQ4编码 -- 应该使用一些更好的指标样本 -- 就像

定义颜色和厚度

在图表上画一些东西

计算蜡烛的数量

运行一个数学公式(太难了)。

做更多的计算和ifthenelse

大多数指标MQ4都是这种格式,所以请注意>>在图表上画一些东西。

----,它可能有点隐含,或自动运行一些最终绘制,但MQ4是这样的 ---

http://tiny.cc/linsay3

http://tiny.cc/linsay2

http://tiny.cc/linsay1

我不会轻易把我的开发东西给别人的

- 这可能对交易没有帮助(但我学到了很多关于MQ4的东西,编译器并不苛刻)。

有一个叫WID 的会员--不知道他的编码水平如何,如果他很好并且遵守保密协议,我想我会把整个指标给他(不过是玩玩的好东西)。

===

实际上,我在这里得到了一个观点

COMMENT -- 没有其他MQ4函数比这个更容易了

与PRINT("ooh, forex bluffer, good time to enter at price" ; perfectpriceVariable)非常相似。

也就是说,它可以作为文本顾问、触发器、显示任何变量值等使用。

只要把它添加到你最喜欢的指标中,然后你就可以让它出现和消失,并给你TRIGGER

--与几小时前的比较等等 ===所有这些编码都是CHILDPLAY。

然而,如果你得到了你最喜欢的指标,你必须先了解这个最喜欢的指标的内部和外部。

例如,你所追求的是什么SIGN,变量将如何变化?

在你可以添加一行注释之前(.... ....)[ 我在屏幕截图中得到一个例子]

只是希望更多的人喜欢编码,而不是抱怨 -- 通过写这个

==== 让我们假设 "IndicatorShortName "确实是MQ4中的一个变量。

你可以把它放在某个地方注释("n","这个变量在这个蜡烛柱中的近似值是",IndicatorShortName)。

尽管如此,你必须在整个MQ4指标中搜索 "IndicatorShortName",看看这是什么!它是一个变量还是真的出现在指标中,或者它是一个外部调用 -- 外部调用可能很困难,人们写这样的东西,使它看起来像OOP

 
coollex:
[lang=de]谢谢你的快速回复。

我有一个ECN经纪人(FXOpen)(5位数)。我认为你对点差的看法是正确的。但它是一个恒定值102(=(Ask - Bid)*(1/Point)),并且在运行策略测试器时没有一直变化。为什么?而在实盘系统中,点差几乎一直在变化。此外,为什么我没有得到OrderSend Error 130?

谢谢你的帮助。[/lang]

这就意味着原因一不是问题所在。

所以在原因二中,TP是1.44743,点差是102点。这意味着,当卖出价达到TP时,买入价需要达到1.44641才能退出交易。从你的图表图片来看,这似乎没有发生。

记住,图表上的条形图是由买入价创建的。

罗伯特

 

iCustom,指标和EA的开仓单

大家好。

我是mql编程的新手。

我在indi中有一个函数,它决定了所有货币的力量。我想做的是为有利可图的货币对开立订单。为此,我有'for'循环,它决定了最大力量的货币,然后另一个'for'循环决定了最弱的货币。

我被卡住了,因为在di中做什么,以后可以在EA中使用,以打开有利可图的货币对的订单。

请查看以下函数代码....

allcurr = 所有的货币

cpow = 货币力量

void pro (int allcurr, double cpow)

{

for (allcurr=0; allcurr<CurrencyCount; allcurr++)

{

if (cpow > 150 || cpow >160)

{

for (allcurr=0; allcurr<CurrencyCount; allcurr++)

{

if (cpow > 40 || cpow > 0)

{

I AM STUCK HERE

} // end for weak if

} // end for weak

} // end for max if

} // end for max

} // end void pro
 

iCustom,指标和EA的开仓单

大家好。

我是mql编程的新手。

我在indi中有一个函数,它决定了所有货币的力量。我想做的是为有利可图的货币对开立订单。为此,我有'for'循环,它决定了最大力量的货币,然后另一个'for'循环决定了最弱的货币。

我被卡住了,因为在di中做什么,以后可以在EA中使用,以打开盈利货币对的订单。

请查看以下函数代码....

allcurr = 所有货币

cpow = 一种货币的力量

void pro (int allcurr, double cpow)

{

for (allcurr=0; allcurr<CurrencyRepeat; allcurr++)

{

if (cpow > 150 || cpow >160)

{

for (allcurr=0; allcurr<CurrencyRepeat; allcurr++)

{

if (cpow > 40 || cpow > 0)

{

I AM STUCK HERE

} // end for weak if

} // end for weak

} // end for max if

} // end for max

} // end void pro
 

OrderComment的变化?

你好。

有什么方法可以在订单创建后改变订单评论吗?

我有一个EA,在可能达到的关键点上创建挂单,但有时由于图表上不理想的快速移动,这些订单必须被取消/删除,因此不可能使用票号来识别每个订单,因为每个关键点的订单可能被打开和取消/删除几次。因此,EA使用一个唯一的OrderComment来识别每个订单,但每隔一段时间,运行EA的电脑就会出现故障,或者互联网连接出现故障,这就会扰乱关键点订单的识别,因此,改变OrderComment以避免EA在没有完成之前的执行就重新启动后产生的混乱而导致的错误,就变得非常有用。

非常令人困惑,对吗?

P.S.神奇的数字被用来识别由EA创建的订单,所以我不能用这个数字来单独识别每个订单。

如果有人能告诉我是否有办法改变OrderComments,我将非常感激。

谢谢你的帮助。

 

我不知道我是否理解了你的意思,但是当你用指标的缓冲区进行"堆栈"操作时,你必须想清楚你想在这个缓冲区里有什么值。

其次,看看这段代码。

if (cpow > 150 || cpow >160)

if (cpow > 40 || cpow > 0)

[/CODE]

this same effect will be when You change it for:

[CODE]

if (cpow > 150)

if (cpow > 0)

编辑:我不知道你想要什么效果,但可以尝试使用数组--可能需要。

致以崇高的敬意

波兰计算机专业学生,在MQL方面有丰富的经验,可以为您编码。

通过邮件报价:gaa1(at)poczta(dot)fm

便宜、良好、快速和专业。

原因: