Спрашивайте! - страница 73

 

В следующем коде он должен удалить мои 2 отложенных ордера:

OrderDelete(ticket1);

OrderDelete(ticket2);

Кто-нибудь может написать, как закрыть открытые позиции так просто?

Спасибо,

---Julia---

 

Привет трейдеры,

как в коде написать "сработал", например..,

если buy_stop "сработал", то sell_stop удален... что-то вроде этого.

---JULIA---

 

Привет трейдеры,

У меня есть этот Ea, почти готовый, благодаря моим замечательным трейдерам forex-tsd, и когда я запускаю его, он торгует только 1 раз, есть ли код, который будет держать ea работает более 1 раза, желательно, как неограниченное количество раз?

Спасибо,

---Julia---

 

кажется, что его нить начинает пахнуть нитью Дэна...

 

Почему это не в разделе советников

Эта тема о советниках и должна быть в разделе советников.

Спасибо ND за перенос

 

Определение последнего результата

Здравствуйте,

Я создаю советника... я хочу определить мой последний прибыльный/убыточный закрытый ордер, возможно ли это осуществить?

Спасибо

Вик

 
veematics:
Здравствуйте,

Я создаю советника. Я хочу определить мой последний прибыльный/убыточный закрытый ордер, возможно ли это осуществить?

Спасибо

Вик

Посмотрите здесь: https://www.mql5.com/en/forum/177667

Edit: Извините, это не отвечает на ваш вопрос.

Да, это возможно, вот пример кода:

datetime LastProfit=0, LastLoss=0;

for(int i = HistoryTotal() - 1; i >= 0 ; i --)

{

if(!OrderSelect(i, SELECT_BY_POS)) continue;

if(OrderSymbol() != Symbol()) continue;

if(OrderMagicNumber() != Magic) continue;

if(OrderCloseTime() > LastProfit && OrderProfit() >= 0)

{

LastProfit = OrderCloseTime();

LastProfitTicket = OrderTicket();

}

if(OrderCloseTime() > LastLoss && OrderProfit() < 0)

{

LastLoss = OrderCloseTime();

LastLossTicket = OrderTicket();

}

}

// Now do what you want with both tickets

 
Benjimang:
Всем привет!

Я использовал конструктор экспертов на сайте sufx.com для создания советника. У него есть два ограничения, от которых я пытаюсь избавиться:

1. Одновременно открывается только 1 сделка. Я могу заставить его открыть две сделки одновременно, но я не могу заставить его открыть ордер на покупку и ордер на продажу одновременно.

2. кажется, что ордера на продажу предпочтительнее ордеров на покупку. Это не было бы проблемой, если бы проблема номер 1 была решена.

Вот фрагмент кода, который, похоже, задерживает меня:

//Check position

bool IsTrade = False;

for (int i = 0; i < Total; i ++) {

OrderSelect(i, SELECT_BY_POS, MODE_TRADES);

if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {

IsTrade = True;

if (OrderType() == OP_BUY) {

//Close

Есть предложения? Я хотел бы позволить ему открывать как можно больше сделок и иметь возможность открывать ордера на покупку и продажу одновременно, если индикаторы говорят об этом.

Спасибо за помощь,

Бенджиманг

ПОЖАЛУЙСТА, знает ли кто-нибудь, что делать с приведенным выше кодом? Правильно ли я определил часть кода? Наверняка кто-то должен что-то знать...?

 
Benjimang:
ПОЖАЛУЙСТА, знает ли кто-нибудь, что делать с приведенным выше кодом? Правильно ли я определил кусок кода? Наверняка кто-то должен что-то знать...?

Это неверно, смешиваются как ордера на покупку, так и ордера на продажу:

if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {

IsTrade = True;[/PHP]

You should have something like this :

[PHP]

bool IsSellTrade = false;

bool IsBuyTrade = false;

for(...

...

if (OrderType() == OP_SELL) IsSellTrade = true;

if (OrderType() == OP_Buy) IsBuyTrade = true;

Конечно, когда вы тестируете открытие сделки, вы должны тестировать отдельно IsSellTrade и IsBuyTrade.

 

Безопасность - кодирование номера счета

Я хочу запускать свои советники с VPS.

В целях безопасности я хочу кодировать номер своего брокерского счета и загружать скомпилированную версию.

Кто-нибудь может описать код, который нужно добавить?

Спасибо.

Причина обращения: