[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 458

[删除]  
Maximov7:
我正在尝试写我的第一个专家顾问......请告诉我如何解决Ask,通过一个变量声明它,而且它应该是全局的,因为它应该被每个特殊函数所感知.......,请帮助我))

在外部EA参数之后直接声明双变量,需要时将其设置为Ask,在任何函数中使用它。尽管使用局部变量并将其作为参数传递更为正确...并了解变量的范围,这是基础知识,反正没有它是不行的。
 

我就是这么做的,但我在start()函数里面看不到它,而且在日志中说,从一开始这个变量在那个时间间隔就没有被分配一个Ask值,而只是0。

extern double C1; C1 = Ask;
extern double C2; C2 = Bid;



int start()
{

OrderSend("EURUSD",OP_BUY,0.1,C1,3,Bid-0.0009,Ask+0.0009);

 
double C1; 
// в старте
C1 = Ask;
 
rlx:


可以肯定的是

把Print()放在调用ClosePosBySizeProfitInPercent("0", -1, Magic, VashParametrPR)函数的地方;在它之前。

参数是明确设置的。也许仍有一些没有记录的限制?例如,程序的最大数量,或程序名称的长度?一切都在运作。添加了一个新的程序后,它没有工作,但它有一个不同的任务。
 

double C1;
// в старте
C1 = Ask;

它不可能开始,因为每一个新的刻度将被分配一个新的Ask....值,它必须为进一步的操作保留。

 
Maximov7:

double C1;
// в старте
C1 = Ask;

你不能在开始时就这样做,因为每一个新的刻度都会给Ask.... 分配一个新的值,你需要锁定它以便进一步操作。

写在init()中

但不清楚为什么从启动的那一刻起就需要Ask

 

大家好!

这是我第一次来这个论坛,如果我写错了地方,我很抱歉。

我需要帮助在我的EA中添加一个虚拟的TP(以点和/或当它达到一个给定的利润值)。

请帮助我们!

真诚的罗曼。

附加的文件:
bunny_v2.21.ex4  22 kb
 
RomanDD:

大家好!

这是我第一次来这个论坛,如果我写错了地方,我很抱歉。

我需要帮助在我的EA中添加一个虚拟的TP(以点和/或当利润达到一个给定值时)。

请帮助我们!

真诚的罗曼。

自己开始写代码,他们会在这里帮助你,解释你不明白的地方。如果你想订购专家顾问的修改,你必须支付编程服务的费用
 

你对我的问题的工作估计要多少钱?

 

下面是另一个问题....我有一个这样的公开订单。

OrderSend("EURUSD",OP_BUY,0.1,C1,10,Bid-0.0017-0.0017,Ask+0.0017);

如果这个订单在takeprofit????,如何建立另一个订单?