로프필드의 도서관 - 페이지 3

 
Roffild :

그리고 왜 복잡한 것을 발명해야 합니까?

이 예는 지표가 아니라 외부 코드를 생성할 필요 없이 지표 형태로 Expert Advisor의 정보를 표시할 수 있는 가능성을 보여줍니다.

ToIndicator_Example.mq5가 작동하지 않으면 터미널이 시작될 때 Indicators\Roffild\ 폴더의 코드가 빌드되지 않았을 것입니다. 로그가 좋을텐데...

물론 우리는 모두 처음부터 모든 것을 만드는 데 익숙하므로 아무도 새로운 라이브러리를 배우고 싶어하지 않지만 오늘날의 세계에서는 타사 코드를 사용하는 것이 일반적인 관행입니다...

플랫폼 개발자는 기능적 목적에 따라 프로그램 모듈의 순위를 매기는 시스템을 체계적으로 개선하고 있으며, 귀하와 귀하의 라이브러리는 반대 방향으로 나아가 모든 것을 다시 비인격화하려고 합니다...))
 
Ivan Negreshniy :
플랫폼 개발자는 기능적 목적에 따라 프로그램 모듈의 순위를 매기는 시스템을 체계적으로 개선하고 있으며, 귀하와 귀하의 라이브러리는 반대 방향으로 나아가 모든 것을 다시 비인격화하려고 합니다...))

모듈로 나누려면 종속성을 해결하는 시스템이 필요합니다. 현재 MQL을 위한 그러한 시스템은 없으며 그럴 가능성도 없습니다.

정상적인 개발 중에는 Expert, Library, Indicator 및 Script로의 명확한 구분이 없으며 모든 것이 상호 연결되어 있습니다. MQ는 그것을 공유하기로 결정했습니다. 이 부문은 CodeBase가 범람하는 소규모 프로젝트 에 적합합니다.

CodeBase에 이 라이브러리가 없는 주된 이유는 하나의 아카이브 또는 버전 제어를 통해 모든 파일을 게시할 수 없기 때문입니다. 이제 각 파일을 데이터베이스에 개별적으로 추가해야 합니다. 하지만 이것은 말도 안 됩니다... 따라서 이러한 제한 사항 때문에 CodeBase에 중대형 프로젝트가 있을 수 없습니다.

 
안녕하세요, 로그 라이브러리( Log4MQL.mqh   그리고   Log4MQL_tofile.mqh   +   기준 치수   ~을 위한   LogMX ) 로그에 쓰는 방법.
 

로프필드의 도서관

저는 MQL5 프로그래밍 커뮤니티에서 Roffild라는 별명으로 알려져 있으며 이것은 MQL5용 오픈 소스 라이브러리입니다. 오랫동안 널리 사용되는 프로그래밍 언어의 표준이 된 MQL5의 기능을 구현하려는 시도입니다. 각 파일에는 하나의 아이디어가 포함되어 있습니다. 라이브러리는 새로운 기능으로 필요에 따라 업데이트됩니다.

프로젝트를 Github에 올리려는 사람은 거의 없었습니다. 단일 표준은 없습니다. MetaQuotes는 프로젝트를 생성할 때 버전 관리 시스템의 사용을 고려하지 않습니다. 어떤 이유로 MetaQuotes의 프로그래머는 프로젝트가 같은 유형이어야 한다고 생각합니다. MQL5.com 웹 사이트의 CodeBase에 게시된 소규모 프로젝트의 경우 이러한 분할이 정당합니다. 중대형 프로젝트의 경우 한 가지 유형의 프로젝트를 선택할 수 없습니다.

나는 다른 프로젝트 구축 구조를 실험했습니다. Git을 사용하려면 MetaQuotes에서 채택한 표준 폴더 구조 밖으로 파일을 이동해야 했습니다. 중간 폴더(이 라이브러리의 "Roffild" 폴더)에 연결하는 것이 가장 좋은 방법입니다.

MetaEditor는 코드를 UTF-16으로 저장할 수 있지만 BOM을 사용한 UTF-8 인코딩도 지원됩니다. 소스 파일을 변환하려면 타사 편집기를 사용해야 합니다( Notepad++ 권장).

라이브러리는 관심 분야로 나눌 수 있습니다.

  • 일반 작업(ArrayList, Log4MQL, ToIndicator 등);
  • 기계 학습에서 AlgLib을 사용한 실험;
  • AlgLib가 더 이상 충분하지 않을 때 Amazon Web Services(EC2 및 EMR)와 함께 Apache Spark를 사용합니다.

선적 서류 비치

MQL5
자바

연결

로프필드닷컴
깃허브
MQL5.com: 토론 주제
MQL5.com: 러시아어 토론 주제


설치

(필요하지 않음)

mklink /j 링크 - 관리자 권한이 필요하지 않습니다.

%APPDATA%\MetaQuotes 폴더를 파티션의 루트나 더 큰 파티션으로 이동하는 것이 좋습니다. Windows에는 255자의 파일 경로 제한이 있습니다. 나를 위한 MQL5 폴더의 전체 경로는 88자로 구성됩니다. 테스트할 때 터미널은 로컬 에이전트의 수만큼 기록을 복사하므로 이 폴더의 크기가 몇 기가바이트만큼 증가합니다.

  1. %APPDATA%\MetaQuotes 폴더를 D:\MQLProjects로 이동
  2. mklink /j %APPDATA%\MetaQuotes D:\MQLProjects
  3. mklink /j D:\MQLProjects\터미널\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\ D:\MQLProjects\MQL5

(중요한)

프로젝트를 복제한 후 MQL5\MyProjects\RoffildLibrary 폴더에서 create_links.bat를 실행하십시오.

코드 스타일

구글 자바 스타일

탭 = 3칸

열 제한 = 110

특허

아파치 라이선스 2.0

 
Библиотека Roffild’a
Библиотека Roffild’a
  • roffild.com
Я известен сообществу программистов на MQL5 под ником Roffild и это моя библиотека с открытым кодом для MQL5. Попытка реализовать возможности на MQL5, которые уже давно стали стандартом для популярных языков программирования. В каждом файле реализована одна идея. Библиотека пополняется по мере необходимости в новых возможностях. Мало кто...
 
" MySQL 형식 파일에 데이터 쓰기 "가 있는데 이 형식에서 읽지 않는 이유는 무엇입니까?
 
Aleksey Vyazmikin :
" MySQL 형식 파일에 데이터 쓰기 "가 있는데 이 형식에서 읽지 않는 이유는 무엇입니까?
텍스트 형식으로 쓰기 쉽고 이 형식에서 읽으려면 파서를 사용해야 합니다. https://en.wikipedia.org/wiki/파싱
Parsing - Wikipedia
  • en.wikipedia.org
The term has slightly different meanings in different branches of linguistics and computer science. Traditional sentence parsing is often performed as a method of understanding the exact meaning of a sentence or word, sometimes with the aid of devices such as sentence diagrams. It usually emphasizes the importance of grammatical divisions such...
 
Roffild :
텍스트 형식으로 쓰기 쉽고 이 형식에서 읽으려면 파서를 사용해야 합니다. https://en.wikipedia.org/wiki/파싱

누구에게는 쉬운 일이고 누구에게는 쉽지 않은 일입니다. 예를 들어 MQL을 사용하여 1000개의 열을 만드는 것은 전혀 쉬운 일이 아닙니다...

 
Aleksey Vyazmikin :

누구에게는 쉬운 일이고 누구에게는 쉽지 않은 일입니다. 예를 들어 MQL을 사용하여 1000개의 열을 만드는 것은 전혀 쉬운 일이 아닙니다...

음... MQL에는 열이 전혀 없습니다. 그리고 MQL != SQL은 완전히 다른 언어입니다.

SQL을 아는 사람은 최적화 후 최적의 패스 수가 5000패스를 초과할 때 가장 좋은 패스를 제거하는 것이 더 쉽습니다. TesterSql.mqh 에서 구현