MT용 Python으로 거래 시스템 만들기. - 페이지 8

 
Vitaly Muzichenko :

현재 가격 의 오른쪽에 이익을 얻도록 입력)

나는 우리가 어떻게 들어갔는지 묻지 않았다.

힌트: 3시간 전에 매도 신호를 받았습니다. 안 그래?

 
Maxim Dmitrievsky :

관심이 있으시면 quantopian.com에 테스터가 있습니다. 또한 그들은 성공적인 전략에 자금을 지원합니다.

그는 성장을 위해 maloliquid를 속이 비어 있습니다. 시장. 100,000 루블 또는 100,000 루블, 맥주, 아마도 물고기로만 돈을 벌 수 있습니다.

그리고 그런 사람들은 자신을 성공한 상인 이라고 자랑스럽게 여기며 포럼을 돌아다닙니다.))

 
TheXpert :

그는 성장을 위해 maloliquid를 속이 비어 있습니다. 시장. 100,000 루블 또는 100,000 루블, 맥주, 아마도 물고기로만 돈을 벌 수 있습니다.

그리고 그런 사람들은 자신을 성공한 상인 이라고 자랑스럽게 여기며 포럼을 돌아다닙니다.))

Andrey, 나는 우리가 더 많이 벌 수 있을지 모르겠습니다... 당신은 Forex에서 마술을 하는 것보다 훨씬 더 많은 것을 할 수 있습니다. 제 일이 아니라면 죄송합니다.

 

독자들에게 이전 시리즈의 내용을 상기시켜 드리겠습니다.

테마의 임무는 거래 시스템(TS)을 만드는 것이 아니라 Python에서 TS를 만드는 것입니다. Python을 선택한 이유는 머신 러닝을 비롯한 광범위한 데이터 처리 라이브러리가 있고 이러한 라이브러리를 TS에서 직접 사용하고 시스템에서 다양한 언어 간 인터페이스를 생성하지 않는 것이 매우 좋을 것이기 때문입니다. 또한 Python은 동일한 MatLab에 비해 기능이 열등하지 않은 우수한 모델링 환경이므로 시스템 모델링과 실행 환경을 이상적으로 결합할 수 있습니다. 즉, TS를 모델에서 다른 프로그래밍 언어로 옮기는 단계를 완전히 배제하고 모델을 TS에서 직접 사용한다.

현재 구현: 전략 템플릿, 전략 테스터 , 모두 간단한 전략에서 테스트되었습니다. 모든 소스는 해당 주제의 이전 게시물 중 하나의 첨부 파일에서 다운로드할 수 있습니다. 또한 기존 작업 전략을 기반으로 TS 모델을 만들었습니다. 이 모델은 선물 SBRF-12.17 및 SBRF-06.18에서 테스트되었습니다.

오늘 테스트는 미래 SBRF-09.18에서도 수행되었습니다. 결과는 SBRF-06.18과 거의 비슷한데, 그래프를 주는 것은 말이 안 된다고 생각합니다.

이제 앞으로의 계획에 대해.

1. 지금 당장 실제 거래와 가상 거래를 하고 싶습니다. 가상 트랜잭션은 주문이 브로커에게 전송되지 않고 트랜잭션의 열기 및 닫기가 로그(우리의 경우 SQLite 데이터베이스 테이블)에 기록되는 경우입니다. 일반적으로 이 단계는 약 한 달이 걸리며 시스템 개발과 결합됩니다. 이 단계에서 터미널과의 통신은 터미널 -> DLL -> SQLite 데이터베이스 -> Python 구성표에 따라 계획됩니다. 통신 프로토콜은 파일 교환과 거의 유사합니다.

2. 시스템은 아직 원시 상태입니다. 기본으로 삼았던 기존 시스템이 크게 변경되어 거의 기본 원칙만 남습니다. 같은 작업을 여러 번 반복할 이유가 없습니다. 지금까지 설정에 대한 조정이 이루어지지 않았습니다. 일반적으로 톱질과 톱질이 여전히 있습니다.

이 두 단계를 모두 결합하고 싶지만 현재로서는 그러한 기회가 없습니다. 무료 컴퓨터는 없습니다. 그리고 둘 다 원합니다. 당신은 아마 하고 싶지도 않지만 해야 합니다. 우선순위가 선택될 때까지.

어쨌든 거기에는 많은 작업이 있으며 가까운 시일 내에 새로운 결과를 기대할 수 없습니다.

 
저는 오랫동안 파이썬으로 프로그래밍을 해왔습니다. 흥미로운 주제, 계속
 

솔직히 말해서, 이 Python은 클래스와 함께 병들었습니다. 다음은 기능 중 하나의 작은 스니펫입니다.

 def Condition(self,i,c= 4 ):
        dt= 0
        L1=not self.Sh and not self.Lo and self.Dev[i]> self.DevL
         if L1  and self.history[i][c] < self.Dev[i] - self.Fr[i]:
            self.Lo= True
            self.Pmin=self.history[i][c]
        elif L1 and self.history[i][c] > self.Dev[i] + self.Fr[i]:
           self. Sh= True
           self.Pmax=self.history[i][c]

이 작은 코드 조각에서 self라는 단어가 몇 번이나 반복되는지 세십시오.

그래서 끊임없이 그리고 모든 곳에서 각 라인에서 여러 번. 이 카누는 모든 클래스의 모든 기능(메소드)에서 지속적으로 반복됩니다.

 
Yuriy Asaulenko :

파이썬 으로 거래 시스템을 작성 하자는 아이디어가 있었습니다.

...

C++ 또는 C#에서는 왜 안 되나요?

재미있는 점은 MQL5에서도 작성할 수 있다는 것입니다. 왜 이 레이어가 천천히 크롤링하는 파이썬입니까?
 
Yuriy Zaytsev :

C++ 또는 C#에서는 왜 안 되나요?

재미있는 점은 MQL5에서도 작성할 수 있다는 것입니다. 왜 이 레이어가 천천히 크롤링하는 파이썬입니까?

C++ 및 C#에는 이미 있습니다.)

나머지에 대해서는 주제의 첫 번째 게시물이나 3-4개의 게시물을 읽습니다.)

 
Yuriy Asaulenko :

C++ 및 C#에는 이미 있습니다.)

나머지에 대해서는 주제의 첫 번째 게시물이나 3-4개의 게시물을 읽었습니다.)

이런 시스템들은 대부분 작가가 이런 저런 도구를 잘 알고 있기 때문에 쓰여진 것 같아요.

대체로 거의 모든 것이 MQL5로 작성될 수 있습니다.

 
Yuriy Zaytsev :

이런 시스템들은 대부분 작가가 이런 저런 도구를 잘 알고 있기 때문에 쓰여진 것 같아요.

대체로 거의 모든 것이 MQL5로 작성될 수 있습니다.

MQL로 모든 것을 작성할 수 있다면 정말로 다른 것이 필요하지 않습니다.

나는 할 수 없고, 이미 작성되고 해결되어 사용 가능한 알고리즘의 세부 사항을 작성하고 심지어 탐구하고 싶지도 않습니다. 그리고 MQL에서 사용하기 위해 다시 작성하거나 수정하는 대신 즉시 직접 적용하십시오. 그건 그렇고, 이것이 OOP의 주요 개념입니다.