MQL5에 대한 소원 - 페이지 100

 
YuraZ >> :

나는 printf 함수가 있다는 것을 안다.

그리고 또 다른 sprintf 를 얻는다면 얼마나 좋을까

아마도 StringFormat() 함수가 그것을 대체할 것입니다:

문자열 형식

주어진 매개변수의 형식을 지정하고 문자열을 반환합니다.

문자열 문자열 형식 (
format , // 형식 설명 문자열
... ... // 옵션
);

옵션

체재

【인】 형식 지정 방법을 포함하는 문자열입니다. 서식 규칙은 PrintFormat 함수와 동일합니다.

...

【인】 쉼표로 구분된 매개변수입니다.

반환 값

라인.


 
Rosh писал(а) >>

아마도 StringFormat() 함수가 그것을 대체할 것입니다:

나는 StringFormat 함수에 PrintFormat 및 printf와 유추하여 동의어 sprintf를 할당해야 한다는 것을 이해합니다. 그러나 그런 다음 snprintf 기능을 구현해야 합니다.

 
Rosh >> :

MQL5 도움말은 다음과 같이 설명합니다.


어-허... 이 이벤트는 (아직?) 개체 작업이 금지된 표시기를 위한 것입니다.

우리는 전문가로서 그러한 지표를 구현하라는 요청을 받았습니다. 그러나 Expert Advisors는 변경된 막대를 계산하는 기능( OnCalculate )에 액세스할 수 없습니다.

 
Roffild писал(а) >>

어-허... 이 이벤트는 표시기 를 위한 것입니다. 이 이벤트에서는 (아직?) 개체 작업이 금지됩니다.

우리는 전문가로서 그러한 지표를 구현하라는 요청을 받았습니다. 그러나 Expert Advisors는 변경된 막대를 계산하는 기능( OnCalculate )에 액세스할 수 없습니다.

이전 OnCalculate 호출에서 반환된 prev_calculated 처리된 막대 수는 OnCalculate 로 전달됩니다. Expert Advisor에서 일부 전역 또는 정적 로컬 변수를 사용하여 처리된 막대를 직접 계산할 수 있습니다.

 
stringo >> :

이전 OnCalculate 호출에서 반환된 prev_calculated 처리된 막대 수는 OnCalculate 로 전달됩니다. Expert Advisor에서 일부 전역 또는 정적 로컬 변수를 사용하여 처리된 막대를 직접 계산할 수 있습니다.

사용자가 차트의 기간을 변경했으며 모든 막대를 다시 계산해야 한다는 것을 Expert Advisor에서 확인할 수 있습니까?

지표에는 그런 문제가 없습니다.

 
Roffild писал(а) >>

사용자가 차트의 기간을 변경했으며 모든 막대를 다시 계산해야 한다는 것을 Expert Advisor에서 확인할 수 있습니까?

그래 넌 할수있어. OnDeinit 함수는 이전 매개변수로 먼저 호출된 다음 새 매개변수로 OnInit가 호출됩니다.

 
많은 사람들이 "전문가"에 대한 지표를 다시 작성해야 하므로 전문가가 " 데이터 창 "에 데이터를 표시하게 하십시오.
 

mql5에서 구문 강조 표시 , 닫을 때 가장 중요한 대괄호(대괄호 몇 개 닫음), 기능 및 텍스트 대체, 쓰기 명령 및 비교 기호 구문 수정 >=,<=,=<,=> , Expert Advisor에서 추가 창을 연결하는 기능 - 예를 들어 ObjWindowCreate(string Name, bool TypeWindow=false) [false - 표시기 창으로, true - 통화 쌍에 대한 별도 창으로]

또한 NotePade ++에서 편집기 인터페이스를 사용하는 것이 좋습니다.

기능 코드를 표시하고 기능 제목에 대해 왼쪽 패널 빼기를 클릭하여 기능 텍스트를 숨기거나 표시할 수 있기를 원합니다.

LineType으로 변수 유형 추가 - 설정의 어드바이저 속성에서 표시되는 라인 유형을 별도로 선택할 수 있습니다.

EA가 실행되는 동안 설정을 초기화하기 위해 별도의 이벤트를 만듭니다. int OnChangeProperty() { return(0)}

AccountMaxLot()와 같은 기능 추가 - 클라이언트의 현재 가능한 최대 입찰가

선택한 로트에 필요한 금액을 표시하는 레이블을 주문 생성 창에 추가하는 것도 나쁘지 않습니다.

스프레드와 스왑이 있거나 없는 특정 주문의 현재 이익을 표시하는 함수를 만듭니다. 예 int CalculateProfitOrder(int OrderNumberHistoryList, bool spred=false, bool swop=false)

여기서 number - 활성 주문 목록의 주문 번호

유니코드에서 문자열 변수의 문자와 삽입 기능을 지원합니다 - string CharUTF(string Font, string 'u+0021'), 여기서 u+는 유니코드 제목이고 0021은 문자 테이블의 문자 코드입니다.

또는 string CharUTF(string Font, string U'0021'), 문자 표현을 U'xxxxx'라는 제목의 날짜 또는 색상으로 인터프리터에 추가하는 것이 좋습니다.

또한 인코딩 문자열 CharToUtf(string Text) 및 문자열 UtfToChar(string UtfText)에 따라 문자열을 번역하는 함수를 만듭니다.

일반적으로 편의를 위해 유형별로 이벤트를 그리는 것이 좋습니다.

전문가 조언자 OnInit() 활성화

전문가 조언자 OnDeinit() 비활성화

시간 프레임 변경 OnChangeTimeFrame(int TimePeriod=Period())

확대/축소 변경 OnChangeZoom( int CountBarPerWindow=WindowBarsPerChart())

새로운 가격 도착 OnNewPrice()

별도의 창 만들기 OnCreateNewWindow(string NameWindow, int IndexWindow=WindowFind(NameWindow), bool TypeWindow=false)

투자자 요청 수신 int OnInvestor(int IndexInvestor - 투자자 식별자(계좌 번호), 문자열 NameInvestor - 투자자 설명, ..... - OrderSend( return(Id Create Order) ) 명령에 대한 쉼표로 구분된 매개변수)

주문 생성 - OnCreateOrder(int IndexOrder=OrderNumberHistoryList)

주문 편집 - OnModifyOrder(int IndexOrder=OrderNumberHistoryList)

TP, SL, 날짜 또는 수동으로 주문을 마감하는 이벤트 OnOrderClose (int TypeCloseOrder= CLOSEMODE_ [TP, SL, Date, Manual], int IndexOrder=OrderNumberHistoryList, bool PriceType=true)

여기서 PriceType - 주문 완료 플래그 true - 주문 잔액이 양수인 거래 false - 주문 잔액이 음수인 거래

 
아마도 이것은 이미 일부 Expert Advisor에서 구현되었지만 프로그램의 기본 버전에서, 즉 열려 있거나 보류 중인 위치가 있는 차트의 레이블이 특정 색상으로 강조 표시되도록 하고 싶습니다. 예를 들어, 오픈 포지션 이 있는 차트의 레이블은 가격이 T / P - 녹색에 접근하면 S / L에 각각 빨간색으로 접근하면 노란색으로 강조 표시됩니다. 원하는 라벨을 원하는 색상으로 직접 표시하는 것도 편리할 것입니다. 여러(다수 또는 모든) 악기에서 작업할 때 매우 편리합니다. 토요일~일요일에 나는 분석을 하고 신호를 기다려야 하는 쌍을 선택하고 눈에 즐거운 색상으로 표시한 다음 보기만 하면 됩니다.
 

Profile의 이름이 보고되는 Mt의 하단에 부과된 Template의 이름을 추가할 수 있습니까?

프로필 이름을 사용하여 프로필 목록을 볼 수 있지만(항상 확인 표시가 있으므로 현재 위치를 알 수 있음) 현재 적용되지 않은 템플릿은 무엇입니까?