Небольшая доработка советника на MQL4

MQL4 Experts Integration

Specification

Дано:

Есть небольшой советник, у которого постоянно открыт только один ордер на покупку или продажу с выставленными при открытии ордера стоплоссом и тейкпрофитом, т.е. при закрытии одного ордера на следующем тике сразу вновь открывается новый ордер с выставлением стопа и тейка. Два ордера одновременно открыты быть не могут.

При покупке  Стоплосс выставляется -      NormalizeDouble (Ask - sl * Point, Digits);

                     Тейкпрофит выставляется - NormalizeDouble (Ask + tp * Point, Digits);

При продаже Стоплосс выставляется -      NormalizeDouble (Bid + sl * Point, Digits);

                     Тейкпрофит выставляется - NormalizeDouble (Bid - tp * Point, Digits):

*sl и tp - задаваемые переменные.


Задача:

Необходимо написать код, который я могу вставить в существующий советник, чтобы на уже открытом ордере выполнялась проверка правильности выставления стоплосса и тейкпрофита относительно цены открытия ордера на каждом тике. Если стоп и тейк выставлены правильно - никаких действий не требуется. Если тейкпрофит И/ИЛИ стоплосс по какой-либо причине выставлены неправильно (например, уровень передвинут вручную намеренно, либо открылся ордер с проскальзыванием), то должна произойти модификация уровней стоплосса И/ИЛИ тейкпрофита, чтобы эти уровни соответствовали первоначально заявленному количеству пунктов относительно цены открытия ордера. 


Responded

1
Developer 1
Rating
(65)
Projects
117
24%
Arbitration
13
54% / 46%
Overdue
15
13%
Free
Published: 2 codes
2
Developer 2
Rating
(12)
Projects
25
24%
Arbitration
2
50% / 50%
Overdue
2
8%
Free
3
Developer 3
Rating
(198)
Projects
291
24%
Arbitration
6
17% / 33%
Overdue
4
1%
Free
4
Developer 4
Rating
(174)
Projects
233
61%
Arbitration
3
33% / 33%
Overdue
6
3%
Free
Published: 1 code
5
Developer 5
Rating
(473)
Projects
1139
44%
Arbitration
51
31% / 33%
Overdue
501
44%
Free
6
Developer 6
Rating
(83)
Projects
154
29%
Arbitration
1
100% / 0%
Overdue
27
18%
Free
7
Developer 7
Rating
(493)
Projects
1022
58%
Arbitration
30
27% / 23%
Overdue
133
13%
Working
8
Developer 8
Rating
(213)
Projects
278
21%
Arbitration
26
58% / 15%
Overdue
0
Loaded
9
Developer 9
Rating
(7)
Projects
14
7%
Arbitration
2
50% / 50%
Overdue
1
7%
Free
10
Developer 10
Rating
(589)
Projects
1070
50%
Arbitration
39
28% / 41%
Overdue
49
5%
Free
Published: 1 article, 8 codes
11
Developer 11
Rating
(69)
Projects
146
34%
Arbitration
13
8% / 62%
Overdue
26
18%
Free
Published: 6 codes
12
Developer 12
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
13
Developer 13
Rating
(175)
Projects
189
33%
Arbitration
5
60% / 20%
Overdue
3
2%
Free
Published: 3 codes
14
Developer 14
Rating
(279)
Projects
341
37%
Arbitration
6
50% / 17%
Overdue
7
2%
Free
Published: 5 codes
15
Developer 15
Rating
(46)
Projects
65
28%
Arbitration
0
Overdue
6
9%
Free
16
Developer 16
Rating
(574)
Projects
945
47%
Arbitration
309
58% / 27%
Overdue
125
13%
Free
17
Developer 17
Rating
(84)
Projects
142
13%
Arbitration
11
55% / 18%
Overdue
3
2%
Free

Project information

Budget
30+ USD