MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 431

 
Artyom Trishkin :

할 수 있다. 하지만 조심하세요. 오픈 포지션 의 경우 종가를 반환합니다. 이에 따라: 매수 - 입찰, 매도 - 매도

에 대한. 그렇게 쓰일 줄은 몰랐네요.

OrderClosePrice()는 닫힌 거래에서만 가져올 수 있다고 생각했습니다.

설명서에는 아무것도 없습니다)
 
igrok333 :
에 대한. 그렇게 쓰일 줄은 몰랐네요.

OrderClosePrice()는 닫힌 거래에서만 가져올 수 있다고 생각했습니다.

설명서에는 아무것도 없습니다)

문서화되지 않은 기능입니다. 그러나 몇 가지 조건이 있습니다. 이제 어느 것이 기억나지 않습니다. Alexey @Alexey Viktorov 에게 물어봐야 합니다. 그는 최근에 이에 대해 썼습니다.

 
Artyom Trishkin :

문서화되지 않은 기능입니다. 그러나 몇 가지 조건이 있습니다. 이제 어느 것이 기억나지 않습니다. Alexey @Alexey Viktorov 에게 물어봐야 합니다. 그는 최근에 이에 대해 썼습니다.

이 코드는 어떻습니까?

변수가 즉시 0으로 초기화되지 않습니까?

 void zakritj_vse_sdelki()
 {
 bool pr;
 for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--)       
   {                                        
   if ( OrderSelect (i, SELECT_BY_POS )== true )
      {   
         if ( OrderType ()== OP_BUY )    pr= OrderClose ( OrderTicket (), OrderLots (), MarketInfo ( OrderSymbol (), MODE_BID ), 30 );                              
         if ( OrderType ()== OP_SELL )   pr= OrderClose ( OrderTicket (), OrderLots (), MarketInfo ( OrderSymbol (), MODE_ASK ), 30 );
         
         if (pr== false ) Print ( "закрытие ордера " , OrderSymbol () , " завершилось с ошибкой #" , GetLastError ());
         if (pr== true ) Print ( "ордер " , OrderSymbol () , " ЗАКРЫТ" );
       }
    }
  } 
 
igrok333 :
이 코드는 어떻습니까?

변수가 즉시 0으로 초기화되지 않습니까?

당신은 침묵에 의존할 수 없습니다. 지역 변수 를 선언할 때 값을 즉시 처리하는 것이 좋습니다. bool pr=false;

물론 일반적으로 거기에 묻는 것은 불필요합니다. 함수가 반환하는 내용을 확인하는 것으로 충분합니다.

if(!OrderClose()) Print("나쁜");

 

이전 양초에서 피보나치 팬의 가격을 찾는 방법은 무엇입니까? MQL5
ObjectGetValueByTime() 이 작동하지 않고 0을 반환한 다음 높은 양초를 반환한 다음 낮은 양초를 반환합니다.

 

@Artyom 트리쉬킨

안녕하세요. 도와주세요. 내 지표에 무엇이 문제인지 알려주세요. 왜 전혀 안 그려지는지 이해가 안됩니다.

https://www.mql5.com/ru/forum/224805#comment_6372281

파일:
indicator.ZIP  21 kb
probability.zip  50 kb
 
Artyom Trishkin :

문서화되지 않은 기능입니다. 그러나 몇 가지 조건이 있습니다. 이제 어느 것이 기억나지 않습니다. Alexey @Alexey Viktorov 에게 물어봐야 합니다. 그는 최근에 이에 대해 썼습니다.

너무 오래전 일이지만... 그래도 찾았습니다. Renat는 그것이 바람직하지 않은 이유를 명확하게 설명합니다. 그러나 내 생각에는 여전히 큰 문제가 아닙니다. 주문을 마감하기 위해 재견적을 받은 경우 문제가 발생할 수 있습니다. 요청에서 Ask 또는 Bid 가격을 설정하면 언제든지 가격을 업데이트하고 다시 시도할 수 있습니다. 그리고 OrderClosePrice()의 종가를 지정하면 주문 데이터를 업데이트하기 위해 주문을 다시 선택해야 합니다.

결론: 불가능하지만 매우 필요한 경우 가능합니다.

Применение функция OrderClosePrice() к открытым ордерам
Применение функция OrderClosePrice() к открытым ордерам
  • 2006.09.11
  • www.mql5.com
Вопрос к разработчикам: Корректно ли использование данной конструкции: OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),0,CLR_NONE) Проверка...
 

말해주세요! "."로 구분된 가격이 있는 열을 포함하여 CSV 파일에서 데이터를 읽고 있습니다. (1.22426) FileReadString (핸들)을 통해, 그런 다음 StrToDouble 함수를 통해 모든 것이 정상입니다. 그러나 가격이 있지만 구분 기호가 ","(1.22426)이고 StrToDouble이 더 이상 읽지 않는 열도 있습니다. CSV 자체에서 쉼표를 점으로 변경할 방법이 없으면 어떻게 합니까?

 
WinProject :

말해주세요! "."로 구분된 가격이 있는 열을 포함하여 CSV 파일에서 데이터를 읽고 있습니다. (1.22426) FileReadString(handle)을 통해, 그런 다음 StrToDouble 함수를 통해 모든 것이 정상입니다. 그러나 가격이 있는 열도 있습니다. 이미 구분 기호 ","(1.22426)가 있고 StrToDouble이 더 이상 읽지 않습니다. CSV 자체에서 쉼표를 점으로 변경할 방법이 없으면 어떻게 합니까?


파일읽기문자열


그런 다음 쉼표에서 점으로 변경할 수 있습니다.


문자열 바꾸기

문자열에서 발견된 모든 하위 문자열을 주어진 문자 시퀀스로 바꿉니다.

int 문자열 바꾸기 (
    끈&           str , // 바꿀 문자열
    상수 문자열      find , // 검색된 하위 문자열
    상수 문자열      바꿔 놓음         // 찾은 위치에 삽입할 하위 문자열
);

 
Vladislav Andruschenko :

파일읽기문자열


그런 다음 쉼표에서 점으로 변경할 수 있습니다.


문자열 바꾸기

문자열에서 발견된 모든 하위 문자열을 주어진 문자 시퀀스로 바꿉니다.

int 문자열 바꾸기 (
    끈&           str , // 바꿀 문자열
    상수 문자열      find , // 검색된 하위 문자열
    상수 문자열      바꿔 놓음         // 찾은 위치에 삽입할 하위 문자열
);


감사합니다! ), 변수 Cena=FileReadString(handle); Separator=StringReplace(Сena,",","."); "숫자에서 문자열로의 암시적 변환" 오류를 씁니다.

문자열로 구분 기호 ","(1.22426)가 있는 값을 읽고 싶지 않고 StringReplace가 실패합니다. 아니면 내가 잘못하고 있습니까?