该函数接收程序端为当前工作期积累的报价并将它们编写入ticks_array。请注意编入的订单应该从过去到现在,也就是说编号0的报价是数组中最古老的。
有懂得这个函数的前辈给我解释一下,谢谢
这里有一些OOP的东西。 这个程序的想法。 * 我在图表中画了一条趋势线,并将其命名为 "哔"--下次价格越过这条线时,我将得到一个哔声。 * 我画了一条趋势线并命名为 "买入" - 下次价格越过这条线时,我将得到一个多头头寸。 我已经写了一个 名为 "CSmartLine "的 对象 ,它能够发出哔哔声,买入和卖出,关闭和...。(到目前为止没有咖啡服务)。 在我的EA中,我有三行代码。 CSmartLinie mSmartLinie1; // Create one object of class CSmartLine void OnTick()
是这样的 我想买EA的 但是市场上的EA 那些评分好的 我全试过了 全都回测不了 全部都是亏损爆仓的 里面的参数看不懂 怎么修改 各位大神能指导下吗 什么赋值 初始值 终止值的 完全不懂 哪里可以学习 还是说要购买EA后找提供者帮忙修改吗~~
你好。 我有一个专家顾问,它被设置为循环使用符号,它占用了大量的内存。 我注意到这是在符号被装入和移出市场观察的时候慢慢爬升的。 所以这不是图表在市场观察中现有项目的循环,而是在新符号被装入和移出的时候。 它被设置为做以下事情。 OnInit将定时器设置为每3秒启动一次, OnTimer 使用 SymbolTotal() SymbolName() 获取列表中的下一个符号 , 使用SymbolSelect() 将图表加载到Market Watch中,ChartSetSymbolPeriod()将当前图表设置为下一个符号。, 使用SymbolSelect()删除Market
这就是问题所在。如果我不需要计算整个数组,而只需要计算最后N个元素。 我不太理解限制时计算这些函数的逻辑。我有一个时间序列数组(指标缓冲区之一),如果我让元素的数量等于0,没有问题,所有的东西都被计算出来了,但是如果我以相同的偏移量减少参与计算的元素数量,我只能得到主要的。简单地说,有一个5000个元素的数组(图表上的条形图),为了节省时间,我需要只计算最后的300个,但当我在第二个参数中指定了300的值时,我得到了主要的5000-4700个元素,但在偏移量300-0上,进一步的数值在调用时不会改变。使用这个参数的意义何在?
我想知道如何显示一个新的柱状体是什么时候出现的。 我主要是担心性能问题。在一些符号上,我看到每隔20毫秒就有一个刻度。没有那么多的时间来反应。 一个想法是rate.tick_volume Mqlrates rates[1]; OnInit() { if(CopyRates(_Symbol,_Period,0,1,rates) < 1) if(rates[0].tick_volume == 1) { ... deal with new bar ... } 另一个想法是检查 柱状图的数量 是否已经增加。 OnInit()
部分程序源码如下,问题如图所示,请求指导这是怎么回事
价格是两位小数的double数字吗,可以直接进行运算吗
//+------------------------------------------------------------------+
//| 获取获取近20根K线最高最低价 |
//+------------------------------------------------------------------+
double getmin()
{...
同一货币对,多个持仓单,每个持仓单的lots和buy/sell方向不同,求持仓单的总体盈亏平衡点的计算方法。
求会写EA的专业人士长期合作。 电话:18756971376 QQ:959560895
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,0,"锤头反转买入",0,0,clrGold) 为什么这句代码执行了下单,却没有在图表对应位置画出金色的箭头呢?
大家好,谁能帮助解决机器人的问题,为什么它不工作? 外来的双倍数lot = 0。01; extern double TPforSymbol = 0; extern double SLforSymbol = 0; int last_bar= 0; int start(){ if (last_bar == Bars) return(0); last_bar = Bars; if (OrdersTotal() == 0){ OrderSend(Symbol(), OP_BUY, lots ,Ask, 3, Bid - SLforSymbol * Point, Ask + TPforSymbol *
代码如下:
void OnTick()
{
……
if(buy1());
{
……
}
……
}
bool buy1()
{
if(略)
if(略)
if(略)
if(略)
return true;
}
日志提示错误如下:
'}' - not all control paths return a value 实验.mq4 64 1 (就是return true 这句)
请问前辈什么原因导致报错?怎么改?谢谢赐教
我做了个很简单的EA,功能就是见到锤子线买进,但没有写平仓代码。我用1个月的K线进行测试,看到日志中显示的开过的仓在测试结束前都被逐一平掉了如:2016.01.30 00:59 Tester: order #1 is closed。这是怎么回事?是EA测试自带的功能吗?我如果编写了有选择性的平仓代码,那么在测试时不符合平仓条件的仓位是不是还会被EA自动平仓?
我在代码里用到这句话:OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,0,"锤头反转买入",0,0,clrGold)。编译执行后,订单是下了,可是为什么订单号不叫“锤头反转买入”,还是1 2 3 ……,而且最后哪个clrGold参数也没起作用,下单的K线位置没看到金色的箭头标志呀?这是为啥?前辈指点,谢谢。
自定义指标调用EA只能开一仓 然后到结束就平了 到底是哪里出问题了 求解答
私下里问了一个问题,这是什么意思。我在论坛上找到一个有用的例子,有助于澄清。 顺便说一下,如果你会说英语,用英语搜索这样的问题是非常有用的,不是用MQL,而是用C++。例如,像这样 http://www.google.com/search?q=const+in+c%2B%2B+after+function&oq=const+in+c%2B%2B&sourceid=chrome&ie=UTF-8 会有很多纯编程论坛的链接,而C++与MQL相当相似 我把评论翻译成了俄语,并为MQL兼容性做了一些调整。我把脚本附在下面,编译它,一切都会变得清晰。 struct X { void foo()
每次比信号源提前止盈平仓,信号还没有止盈但是价格已经掉头,这时挂在VPS上又自动下一单。从哪里设置可以解决问题?
知道答案的可以加 QQ70845207,向大家请教一下,先谢谢了!
为什么选用了 ThinkForexAU-Live 2 只能订购很少的信号?前几天还可以订购差不多所有的,而且我订了一款现在还能用,而现在再选这个服务器,无论是这个网站上还是MT4的信号列表中,都只剩下少得可怜的几个信号了。问下这个是啥原因,如果我要订购其他信号,需要怎样操作?谢谢!
比如提供信号这 每单0.1手,而我如何设置每单0.01手成交。
因为的资金比提供者资金小,想稳健盈利防止爆仓把每单设置成0.01手。
请问在什么地方设置 计算提供者和订阅者的持仓交易量比例????
有谁能告诉我什么会导致这些错误?StopLevels水平为20点,所有交易都应通过。 残缺不全和脱引是很烦人的 :)
https://www.mql5.com/zh/signals/138633 信号 昨天挂上
如题所示,我想在市场里,购买一个专家,既外汇机器人,EA,这个专家,提供了模拟和测试,但是,无法用于真实账户,但是,我申请了模拟账户,也无法运行此EA,我想知道的是,如果我租用或者购买以后,是否需要从新下载下载才 可以在真实账户上使用的EX4文件?或者,在购买以后,我得到的是EX4文件还是 EQ4文件?如果我购买以后,是否有经纪人账户 或者 电脑ID,或IP的限制??熟悉的朋友帮忙解答一下!

您错过了交易机会:
- 免费交易应用程序
- 8,000+信号可供复制
- 探索金融市场的经济新闻
注册
登录