Alexey Kozitsyn : 해보자 어떻게 해야 하는지에 대한 설명과 함께 주문을 반복하는 코드를 보여주어야만 무엇이 옳고 그른지 말할 수 있습니다. 함수의 이름만으로는 결과에 더 가까워지지 않습니다.
안녕하세요 ... 도움을 주셔서 감사합니다 ... 적절한 폴더에 필요한 이벤트를 추가하는 것만으로도 주문 마감을 알리는 작은 일이 될 것 같습니다. 그렇게 간단하지 않은 것으로 나타났습니다. .. 다음은 MQL4 참조 에서 가져온 코드의 예입니다. 거래 기능:
intOrdersHistoryTotal();
// 거래 내역에서 정보 검색 inti,accTotal=OrdersHistoryTotal(); (i=0;i<accTotal;i++) { //---- 선택 결과 확인 if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false) { Print("기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(",GetLastError(),")"); 휴식; } // 주문으로 작업 ...
}
... 이 함수는 클라이언트 터미널에 로드된 현재 계정 내역에서 마감 및 삭제된 주문 수를 반환합니다. 내역 목록의 크기는 터미널의 "계정 내역" 탭의 현재 설정에 따라 다릅니다.
그녀가 그것들을 어떻게 분류할 것인지, 그리고 이것이 왜 필요한지, 이해가 되지 않습니다... 아마도 방해하지 않기 위해 기억하고 버리기 위한 것 외에는?
새로 마감된 주문이 마감되는 순간에 짧은 음성 신호로 음성을 전달해야 합니다. 내 클라이언트 터미널의 모든 마감된 주문은 TrailStopLoss 및 TakeProfit 평균의 두 가지 유형만 있습니다 . 오더(오더 그룹)를 체결할 때 방향( 매도 또는 매수 )에 상관없이StopLoss 를 청산하는 명령 유형으로만 구분하면 됩니다. 또는이익을 취하십시오,적절한PlaySound 함수에 전달합니다.
안녕하세요 ... 도움을 주셔서 감사합니다 ... 적절한 폴더에 필요한 이벤트를 추가하는 것만으로도 주문 마감을 알리는 작은 일이 될 것 같습니다. 그렇게 간단하지 않은 것으로 나타났습니다. .. 다음은 MQL4 참조 에서 가져온 코드의 예입니다. 거래 기능:
intOrdersHistoryTotal();
// 거래 내역에서 정보 검색 inti,accTotal=OrdersHistoryTotal(); (i=0;i<accTotal;i++) { //---- 선택 결과 확인 if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false) { Print("기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(",GetLastError(),")"); 휴식; } // 주문으로 작업 ...
}
... 이 함수는 클라이언트 터미널에 로드된 현재 계정 내역에서 마감 및 삭제된 주문 수를 반환합니다. 내역 목록의 크기는 터미널의 "계정 내역" 탭의 현재 설정에 따라 다릅니다.
그녀가 그것들을 어떻게 분류할 것인지, 그리고 이것이 왜 필요한지, 이해가 되지 않습니다... 아마도 방해하지 않기 위해 기억하고 버리기 위한 것 외에는?
새로 마감된 주문이 마감되는 순간에 짧은 음성 신호로 음성을 전달해야 합니다. 내 클라이언트 터미널의 모든 마감된 주문은 TrailStopLoss 및 TakeProfit 평균의 두 가지 유형만 있습니다 . 주문(주문 그룹)을 마감할 때 방향( Sell or Buy )에 상관없이 StopLoss를닫으 려면 명령 유형으로만 구분하면 됩니다.또는이익을 취하십시오,적절한PlaySound 함수에 전달합니다.
순서를 역순으로 정렬해야 하기 때문입니다. 0이 맨 처음입니다. accTotal-1이 마지막입니다. 이 코드에서 "// working with the order" 뒤의 주석을 기억하고 SL 또는 TP의 닫기 주석이 포함되어 있는지 확인하십시오.
Alexey Kozitsyn : 순서를 역순으로 정렬해야 하기 때문에 0이 맨 처음입니다. accTotal-1이 마지막입니다. 이 코드에서 "// working with the order" 뒤의 주석을 기억하고 SL 또는 TP의 닫기 주석이 포함되어 있는지 확인하십시오.
intOrdersHistoryTotal();
// 거래 내역에서 정보 검색 inti,accTotal=OrdersHistoryTotal(); (i=0;i<accTotal;i++) { //---- 선택 결과 확인 if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false) { Print("기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(",GetLastError(),")"); 휴식; } // 주문으로 작업 ...
}
문자열 주문 주석();
끈코멘트; if(OrderSelect(10,SELECT_BY_TICKET)==false) { Print("OrderSelect()가 오류를 반환했습니다. - ",GetLastError()); 리턴(0); } 주석=주문 주석 ();
// ...
답변 감사합니다... OrderComment 기능 코드를 추가한 후( MQL4 참조OrdersHistoryTotal 함수에 의해 선택된 주문의 주석을 반환하는 거래 함수 , 일반 코드는 다음과 같은 형식을 취합니다... 터미널 히스토리에 새로운 마감 주문을 추적하는 함수가 없나요? ... " 0 - 맨 처음. accTotal-1 - 마지막" - 터미널의 역사에서 "첫 번째 닫힘"과 "마지막"을 의미합니다. 시간이 지났습니까? ... 제대로 이해 했습니까?
int i,accTotal= OrdersHistoryTotal (); string comment; for (i=accTotal- 1 ;i>= 0 ;i++) { //---- check selection result if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false ) { Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" ); break ; } // работа с ордером ... comment = OrderComment (); // Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ }
int i,accTotal= OrdersHistoryTotal (); string comment; for (i=accTotal- 1 ;i>= 0 ;i++) { //---- check selection result if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false ) { Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" ); break ; } // работа с ордером ... comment = OrderComment (); // Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ }
한 문자열이 다른 문자열에 있는지 확인하려면 문자열 작업 기능을 사용하십시오.
감사합니다... StringFind = 문자열에서 부분 문자열 검색 기능을 의미합니다.
정수 문자열 찾기(
string string_value, // 찾고자 하는 문자열
string match_substring, // 우리가 찾고 있는 것
int start_pos=0 // 검색을 시작할 위치
);
옵션
문자열 값
【인】 검색할 문자열입니다.
match_substring
【인】 검색된 하위 문자열입니다.
start_pos=0
【인】 검색을 시작해야 하는 문자열의 위치입니다.
반환 값
검색된 하위 문자열이 시작되는 문자열의 위치 번호를 반환하거나 하위 문자열을 찾을 수 없는 경우 -1을 반환합니다.
int i,accTotal= OrdersHistoryTotal (); string comment; for (i=accTotal- 1 ;i>= 0 ;i++) { //---- check selection result if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false ) { Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" ); break ; } // работа с ордером ... comment = OrderComment (); // Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ }
int StringFind( stringstring_value, // строка, в которой ищем stringmatch_substring, // что ищем intstart_pos=0// с какой позиции начинать поиск
int i,accTotal= OrdersHistoryTotal (); string comment; for (i=accTotal- 1 ;i>= 0 ;i++) { //---- check selection result if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false ) { Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" ); break ; } // работа с ордером ... comment = OrderComment (); // Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ }
int StringFind( stringstring_value, // строка, в которой ищем stringmatch_substring, // что ищем intstart_pos=0// с какой позиции начинать поиск
);
아니요. 당신이하고있는 일을 이해하려고 노력하십시오. 당신이 작성한 것은 단지 함수 프로토타입 (즉, 설명, 기능)일 뿐입니다. 저것들. 방금 문서에서 일부를 찢었습니다. 당신은 그것을 사용할 필요가 있습니다. 저것들. 인수를 자신의 값으로 대체하십시오. 그리고 이 함수는 결과를 반환합니다. 또한 이 결과를 처리해야 합니다.
해보자 어떻게 해야 하는지에 대한 설명과 함께 주문을 반복하는 코드를 보여주어야만 무엇이 옳고 그른지 말할 수 있습니다. 함수의 이름만으로는 결과에 더 가까워지지 않습니다.
안녕하세요 ... 도움을 주셔서 감사합니다 ... 적절한 폴더에 필요한 이벤트를 추가하는 것만으로도 주문 마감을 알리는 작은 일이 될 것 같습니다. 그렇게 간단하지 않은 것으로 나타났습니다. .. 다음은 MQL4 참조 에서 가져온 코드의 예입니다. 거래 기능 :
int OrdersHistoryTotal ();
// 거래 내역에서 정보 검색int i,accTotal= OrdersHistoryTotal ();
( i=0;i<accTotal;i++)
{
//---- 선택 결과 확인
if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)== false )
{
Print ( "기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(" , GetLastError (), ")" );
휴식 ;
}
// 주문으로 작업 ...
}
... 이 함수는 클라이언트 터미널에 로드된 현재 계정 내역에서 마감 및 삭제된 주문 수를 반환합니다. 내역 목록의 크기는 터미널의 "계정 내역" 탭의 현재 설정에 따라 다릅니다.
그녀가 그것들을 어떻게 분류할 것인지, 그리고 이것이 왜 필요한지, 이해가 되지 않습니다... 아마도 방해하지 않기 위해 기억하고 버리기 위한 것 외에는?
새로 마감된 주문이 마감되는 순간에 짧은 음성 신호로 음성을 전달해야 합니다. 내 클라이언트 터미널의 모든 마감된 주문은 TrailStopLoss 및 TakeProfit 평균 의 두 가지 유형만 있습니다 . 오더(오더 그룹)를 체결할 때 방향( 매도 또는 매수 )에 상관없이 StopLoss 를 청산하는 명령 유형으로만 구분하면 됩니다. 또는 이익을 취하십시오, 적절한 PlaySound 함수에 전달합니다.
안녕하세요 ... 도움을 주셔서 감사합니다 ... 적절한 폴더에 필요한 이벤트를 추가하는 것만으로도 주문 마감을 알리는 작은 일이 될 것 같습니다. 그렇게 간단하지 않은 것으로 나타났습니다. .. 다음은 MQL4 참조 에서 가져온 코드의 예입니다. 거래 기능 :
int OrdersHistoryTotal ();
// 거래 내역에서 정보 검색int i,accTotal= OrdersHistoryTotal ();
( i=0;i<accTotal;i++)
{
//---- 선택 결과 확인
if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)== false )
{
Print ( "기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(" , GetLastError (), ")" );
휴식 ;
}
// 주문으로 작업 ...
}
... 이 함수는 클라이언트 터미널에 로드된 현재 계정 내역에서 마감 및 삭제된 주문 수를 반환합니다. 내역 목록의 크기는 터미널의 "계정 내역" 탭의 현재 설정에 따라 다릅니다.
그녀가 그것들을 어떻게 분류할 것인지, 그리고 이것이 왜 필요한지, 이해가 되지 않습니다... 아마도 방해하지 않기 위해 기억하고 버리기 위한 것 외에는?
새로 마감된 주문이 마감되는 순간에 짧은 음성 신호로 음성을 전달해야 합니다. 내 클라이언트 터미널의 모든 마감된 주문은 TrailStopLoss 및 TakeProfit 평균 의 두 가지 유형만 있습니다 . 주문(주문 그룹)을 마감할 때 방향( Sell or Buy )에 상관없이 StopLoss 를 닫으 려면 명령 유형으로만 구분하면 됩니다. 또는 이익을 취하십시오, 적절한 PlaySound 함수에 전달합니다.
순서를 역순으로 정렬해야 하기 때문에 0이 맨 처음입니다. accTotal-1이 마지막입니다. 이 코드에서 "// working with the order" 뒤의 주석을 기억하고 SL 또는 TP의 닫기 주석이 포함되어 있는지 확인하십시오.
int OrdersHistoryTotal ();
// 거래 내역에서 정보 검색int i,accTotal= OrdersHistoryTotal ();
( i=0;i<accTotal;i++)
{
//---- 선택 결과 확인
if ( OrderSelect (i,SELECT_BY_POS,MODE_HISTORY)== false )
{
Print ( "기록 데이터베이스에 액세스하는 동안 오류가 발생했습니다(" , GetLastError (), ")" );
휴식 ;
}
// 주문으로 작업 ...
}
문자열 주문 주석 ( );
끈 코멘트 ;if ( OrderSelect (10,SELECT_BY_TICKET)== false )
{
Print ( "OrderSelect()가 오류를 반환했습니다. - " , GetLastError ());
리턴 (0);
}
주석 = 주문 주석 ();
// ...
답변 감사합니다... OrderComment 기능 코드를 추가한 후( MQL4 참조 OrdersHistoryTotal 함수에 의해 선택된 주문의 주석을 반환하는 거래 함수 , 일반 코드는 다음과 같은 형식을 취합니다... 터미널 히스토리에 새로운 마감 주문을 추적하는 함수가 없나요? ... " 0 - 맨 처음. accTotal-1 - 마지막" - 터미널의 역사에서 "첫 번째 닫힘"과 "마지막"을 의미합니다. 시간이 지났습니까? ... 제대로 이해 했습니까?
터미널 히스토리에 새로운 마감 주문을 추적하는 기능이 없나요?
표준어는 없습니다.
string comment;
for (i=accTotal- 1 ;i>= 0 ;i++)
{
//---- check selection result
if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false )
{
Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" );
break ;
}
// работа с ордером ...
comment = OrderComment ();
// Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ
}
표준어는 없습니다.
string comment;
for (i=accTotal- 1 ;i>= 0 ;i++)
{
//---- check selection result
if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false )
{
Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" );
break ;
}
// работа с ордером ...
comment = OrderComment ();
// Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ
}
감사합니다... StringFind = 문자열에서 부분 문자열 검색 기능을 의미합니다.
);
검색된 하위 문자열이 시작되는 문자열의 위치 번호를 반환하거나 하위 문자열을 찾을 수 없는 경우 -1을 반환합니다.
... 또는 StringCompare 함수 - 두 문자열을 비교 합니까?...
감사합니다... StringFind = 문자열에서 부분 문자열 검색 기능을 의미합니다.
);
검색된 하위 문자열이 시작되는 문자열의 위치 번호를 반환하거나 하위 문자열을 찾을 수 없는 경우 -1을 반환합니다.
...
권리.
감사합니다... 코드는 다음과 같습니다.
int i,accTotal= OrdersHistoryTotal ();
int StringFind (string comment;
for (i=accTotal- 1 ;i>= 0 ;i++)
{
//---- check selection result
if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false )
{
Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" );
break ;
}
// работа с ордером ...
comment = OrderComment ();
// Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ
}
string string_value , // строка, в которой ищем
string match_substring , // что ищем
int start_pos=0 // с какой позиции начинать поиск
);
감사합니다... 코드는 다음과 같습니다.
int i,accTotal= OrdersHistoryTotal ();
int StringFind (string comment;
for (i=accTotal- 1 ;i>= 0 ;i++)
{
//---- check selection result
if ( OrderSelect (i, SELECT_BY_POS , MODE_HISTORY )== false )
{
Print ( "Ошибка при доступе к исторической базе (" , GetLastError (), ")" );
break ;
}
// работа с ордером ...
comment = OrderComment ();
// Проверяем, есть ли в комментарии признак закрытия ордера по ТП или СЛ
}
string string_value , // строка, в которой ищем
string match_substring , // что ищем
int start_pos=0 // с какой позиции начинать поиск
);
거래, 자동 거래 시스템 및 거래 전략 테스트에 관한 포럼
초보자의 질문
에이원엑스핏 , 2016.11.30 22:14
Prompt OrderSelect SELECT_BY_POS로 마지막 주문과 첫 주문 중 0번째 주문은 무엇입니까? 때로는 그 반대도 시도하고 수정 #0 오류가 충돌합니다.