sllawa3 : 주어진 마법으로 열린 질서 또는 평신도의 부재를 확인하는 방법을 알려주시겠습니까? 선택 순서를 통해 존재를 확인할 수 있지만 부재를 확인하는 방법은 무엇입니까?
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 06.03.2008 |//| Описание : Возвращает флаг существования позиций |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//| ot - время открытия ( 0 - любое время открытия) |//+----------------------------------------------------------------------------+bool ExistPositions( string sy= "" , int op=- 1 , int mn=- 1 , datetime ot= 0 ) {
int i, k= OrdersTotal ();
if (sy== "0" ) sy= Symbol ();
for (i= 0 ; i<k; i++) {
if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol()==sy || sy== "" ) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op< 0 || OrderType()==op) {
if (mn< 0 || OrderMagicNumber()==mn) {
if (ot<=OrderOpenTime()) return (True);
}
}
}
}
}
}
return (False);
}
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 12.03.2008 |//| Описание : Возвращает флаг существования ордеров. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любой ордер) |//| mn - MagicNumber (-1 - любой магик) |//| ot - время открытия ( 0 - любое время установки) |//+----------------------------------------------------------------------------+bool ExistOrders( string sy= "" , int op=- 1 , int mn=- 1 , datetime ot= 0 ) {
int i, k= OrdersTotal (), ty;
if (sy== "0" ) sy= Symbol ();
for (i= 0 ; i<k; i++) {
if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) {
ty=OrderType();
if (ty> 1 && ty< 6 ) {
if ((OrderSymbol()==sy || sy== "" ) && (op< 0 || ty==op)) {
if (mn< 0 || OrderMagicNumber()==mn) {
if (ot<=OrderOpenTime()) return (True);
}
}
}
}
}
return (False);
}
if (ExistPositions( СИМВОЛ , ОПЕРАЦИЯ , МАГИК , ВРЕМЯ ОТКРЫТИЯ )==false) {код, если нету позиции}
선택기는 열린 주문이 있으면 주문을 찾습니다. 그러나 열린 주문이 없으면 어떻게 감지합니까? 선택기에서 그것은 여전히 마지막으로 존재하는 이미 닫힌 포즈를 보여줄 것입니다...
int DS= 0 ;
for ( int i = 0 ; i < OrdersTotal (); i++)
{
if ( OrderSelect (i, SELECT_BY_POS, MODE_TRADES)) // если под такой позицией ордер не выбран идём на следующий круг
{ if (OrderSymbol() == Symbol ()) // если символ ордера не совпадает с символом инструмента идём на следующий круг
{ if (OrderMagicNumber() == MAGA) // если Magic ордера не совпадает с MAGA идём на следующий круг
{ if (OrderType() == OP_BUY)DS++; // если дошли аж суда и тип бай то увеличиваем счётчик на 1
}
}
}
}
// если тут DS=0 значит открытых ордеров по текущему символу с заданным магиком типа бай нету
주어진 마법으로 열린 질서 또는 평신도의 부재를 확인하는 방법을 알려주시겠습니까? 선택 순서를 통해 존재를 확인할 수 있지만 부재를 확인하는 방법은 무엇입니까?
존재가 없다면 존재하지 않습니다 :)))
yes.. if.. 현재 선택기가 마지막 포즈를 갖는 값을 저장합니다...
- 고려 중인 기간에 대한 극단 막대의 수를 얻습니다.
- 고점과 저점 검색 기능을 사용합니다.
https://docs.mql4.com/ru/series/iLowest
https://docs.mql4.com/ru/series/iHighest
바르게?
주어진 마법으로 열린 질서 또는 평신도의 부재를 확인하는 방법을 알려주시겠습니까? 선택 순서를 통해 존재를 확인할 수 있지만 부재를 확인하는 방법은 무엇입니까?
주문도 마찬가지...
결과가 한 번만 표시되도록하려면 어떻게해야합니까?
고맙습니다.
결과가 한 번만 표시되도록하려면 어떻게해야합니까?
고맙습니다.
문제가 발생했습니다 .. 도움 ...
선택기는 열린 주문이 있으면 주문을 찾습니다. 그러나 열린 주문이 없으면 어떻게 감지합니까? 선택기에서 그것은 여전히 마지막으로 존재하는 이미 닫힌 포즈를 보여줄 것입니다...
뭐가 그렇게 불만이야?