발명가들의 양적 거래에 대한 소개 - 기본부터 실제 전쟁까지

저자:선함, 2019-06-25 15:48:58, 업데이트: 2023-10-31 21:01:08

인간의 말의 의미. 오랜 시간 동안의 모화와 자기 학습을 통해 우리는 무의식적으로 말을 배우고 다른 아이들이 말하는 것을 이해할 수 있습니다. 중국어, 영어, 프랑스어 등 다양한 언어가 있습니다. 중국어: 안녕하세요 영어: Hello World 프랑스어:Bonjour tout le monde

컴퓨터 스크린에 "Hello World"를 표시하는 프로그래밍 언어를 사용하면 다음과 같습니다. C 언어: puts ((세상에 안녕하세요); 자바 언어:System.out.println (세상에 안녕하세요); 파이썬 언어:print (영어:print) 컴퓨터 언어는 그 자체로 특정한 규칙들을 가지고 있고, 또 다른 많은 언어들이 있고, 이 언어들의 규칙들은 우리가 오늘 여러분께 설명할 필요가 있는 프로그래밍 언어의 분류이며, 각각의 분류들 안에서 우리는 단지 가장 기본적인 일반적인 규칙을 기억해야 합니다.

프로그래밍 언어 분류

사람들이 비교를 통해 자신의 양적 거래 프로그래밍 언어를 선택할 수 있도록 하기 위해, 우리는 가장 일반적으로 사용되는 6개의 프로그래밍 언어를 분류합니다. 이들은 각각 파이썬, Matlab/R, C++, Java/C#, EasyLanguage 및 시각화 언어입니다.img그림 3-1 프로그래밍 언어 평가

우리는 기능 범위, 실행 속도, 확장성, 학습 난이도에 따라 점수를 부여합니다. 1-5 사이의 점수는 기능 범위에서 5점을 받으면 기능이 강하다는 것을 의미합니다. 1점은 기능이 부족하다는 것을 의미합니다. 위 그림과 같이 시각화 언어와 EasyLanguage 언어는 배우기 쉽고 초보자에게 매우 적합합니다.

그러나 각 프로그래밍 언어에 대한 평가는 주로 양적 거래 분야에서 적용을 위한 것이며 개인 주관적 구성 요소가 있습니다. 또한 다음 댓글 섹션에서 박수를 받거나 의견을 제시하십시오. 다음으로 각 프로그래밍 언어를 개별적으로 소개하기 시작합니다.

시각화 언어

시각화 프로그래밍은 오래전부터 시작되어 새로운 것이 아닙니다. 이 모형은 다양한 컨트롤 모듈을 탑재하여 코드 로직을 구축하고 거래 전략을 설계하는 과정을 드래그 앤드러 방식으로 수행 할 수 있습니다.img도 3-2 시각화 된 프로그래밍 언어 인터페이스

위 그림과 같은 동일한 절차는 발명가의 양적 거래 플랫폼 시각화 프로그래밍에서 몇 줄의 코드만으로 처리됩니다. 이것은 프로그래밍의 문턱을 크게 낮추고 특히 프로그래밍을 전혀 모르는 거래자에게는 훌륭한 운영 경험을 제공합니다.

이 시각화 언어의 구현 정책의 하층이 C++로 전환되어 있기 때문에, 프로그램 실행 속도에 큰 영향을 미치지 않습니다. 그러나 기능과 확장성이 약하여 너무 복잡하고 너무 세밀한 거래 전략을 개발할 수 없습니다.

EasyLanguage 언어

이른바 'EasyLanguage' 언어는 일부 상업용 양자 거래 소프트웨어에 고유한 프로그래밍 언어를 의미한다. 비록 이들 언어들 또한 일부 객체 지향적인 특성을 가지고 있지만, 응용 프로그램에서는 주로 스크립트 형태로 사용된다. 문법적으로는 또한 우리의 자연어에 매우 가깝고, 양자 거래 초보자에게는 EasyLanguage를 입문으로 사용하는 것이 더 좋은 선택이다. 예를 들어: 발명자의 양자 거래 플랫폼의 메어 언어이다.

이 스크립트 언어는 그 특정 소프트웨어에서 정책 검색 및 리얼 디스크를 하는 데 문제가 없지만 확장 측면에서는 종종 제한적입니다. 예를 들어 정책 개발자가 외부 API를 호출할 수 없습니다. 그리고 실행 속도에서는 이 스크립트 언어는 모두 자체 가상 컴퓨터에서 실행되며, Java/C#보다 성능 최적화가 덜되고 느립니다.

파이썬

스택오버플로우에서, 최근 몇 년 동안 주류 프로그래밍 언어의 접속량은 거의 변하지 않고, 파이썬만이 상승 추세를 보이고 있다. 파이썬은 웹 사이트 개발, 기계 학습, 깊이 학습, 데이터 분석 등에 사용되며, 그 유연성과 개방성으로 인해 가장 보편적인 언어로 자리 잡았다. 양적 투자 분야에서도 마찬가지다. 현재 국내의 양적 플랫폼은 주로 파이썬을 주력으로 하고 있다.

파이썬의 기본 데이터 구조 목록과 사전, 기능은 매우 강력하며, 기본적으로 데이터 표현의 요구를 충족시킬 수 있습니다. 더 빠르고 기능이 더 포괄적인 데이터 구조가 필요한 경우, 기본적으로 파이썬 과학 계산이라고 불리는 표준 라이브러리인 NumPy와 SciPy를 사용하는 것이 좋습니다.

금융 공학에서 보다 타겟화된 라이브러리는 파다스이며, 시리즈와 데이터프레임 두 가지 데이터 구조를 가지고 있으며, 시간 순서를 처리하는 데 매우 적합하다.

속도 측면에서 파이썬은 중류의 위치에 있으며, C++보다 느리고 EasyLanguage보다 빠르다. 주로 파이썬이 동적인 언어이기 때문에 순수 파이썬 언어에서 실행되는 속도는 일반적입니다. 일반적으로, 일부 기능을 정적 최적화 할 수 있지만 Cython을 사용하여 C++의 속도에 가깝습니다.

유독 언어로서, 확장성 측면에서 파이썬은 상위권에 있다. 이는 다른 언어와 광범위한 연동이 가능할 뿐만 아니라 확장 API의 설계도 매우 편리하다. 학습 난이도에 있어서 파이썬의 문법은 간단하고 코드는 가독성이 높으며, 초보하기 쉽다.

MATLAB/R

그 다음으로 데이터 분석에 주력하는 Matlab과 R 언어가 있다. 언어의 저자는 문법적으로 과학적 연산에 대한 많은 디자인을 하고 있으며, 이는 정량화 거래 연산을 내재적으로 지원하는 특징을 가지고 있다. 그러나 응용 범위는 상대적으로 제한되어 있으며, 일반적으로 데이터 분석과 전략 재검토에 더 많이 사용된다. 거래 시스템 및 전략 알고리즘 개발에 있어서는 사용 편의성과 안정성이 열등하다.

또한, Matlab과 R 언어는 고유의 언어 가상 컴퓨터에서 실행되기 때문에 실행 속도와 확장성은 상대적으로 낮습니다. 성능적으로는 Java와 C#보다 훨씬 나약합니다. 그러나 문법은 수학적 표현식 공식에 더 가깝기 때문에 배우기가 상대적으로 쉽습니다.

C++

C++는 범용 프로그래밍 언어이며, 프로세서적 프로그래밍, 데이터 추상화, 객체 지향 프로그래밍, 범용 프로그래밍 및 디자인 모드 등 다중 프로그래밍 모드를 지원한다. C++는 당신이 원하는 모든 기능을 구현할 수 있지만, 강력한 언어의 가장 큰 단점은 템플릿, 포인터, 메모리 유출 등과 같은 학습의 매우 높은 난이도가 있다는 것이다.

현재, C++는 C++ 언어의 특징이 컴퓨터 바닥에 더 쉽게 접근하기 때문에 용량이 크고 높은 빈도 거래를 위한 선호 프로그래밍 언어로 남아 있으며, 대용량의 데이터를 처리하는 고성능 회수 및 실행 시스템을 개발하는 데 가장 효과적인 도구이다.

자바/C#

자바/C#는 모두 가상 머신에서 실행되는 정적 언어이며, C++와 비교했을 때 배열 경계를 넘지 않고, 코레덤프도 없고, 잘못된 코드의 위치로 비정상적으로 정확한 위치를 던지거나, 자동 쓰레기 회수 메커니즘도 있고, 메모리의 누출에 대한 걱정도 없습니다. 그래서 문법학적으로 학습 난이도가 높을 때 C++보다 더 쉬워집니다. 실행 속도에 있어서, 가상 머신이 자동으로 실행할 때 컴파일되는 JIT 기능을 가지고 있기 때문에 C++보다 빠르죠.

그러나 기능적인 측면에서는 C++처럼 트랜잭션 시스템 하층을 최적화 할 수 없습니다. 확장 성능의 측면에서는 C++에 비해 다소 약합니다. 왜냐하면 C를 통해 확장해야 할 다리 때문에 확장 기능 모듈을 확장 할 때 벽 층을 넘어야합니다.

요약

그러나 다시 말해서, 양적 프로그래밍 언어는 중요하지 않습니다. 중요한 것은 아이디어입니다. 발명가의 양적 맥 언어와 시각화 언어는 양적 입문의 문턱을 두드리는 것은 전혀 문제가 없습니다. 입문 후 향상시키는 것은 다양한 시장 상황을 결합하여 끊임없이 시도하고 탐구하는 것이 필요합니다.

당신의 전략을 설계하고 당신의 생각을 거래하십시오. 이 관점에서, 양적 거래의 핵심은 여전히 거래 생각입니다. 양적 거래자로서, 전략 작성 플랫폼의 기본 문법과 기능을 숙지하는 것뿐만 아니라 실제 전투에서 거래 개념을 구현하는 것이 필요합니다. 양적 거래는 다른 거래 개념을 구현하는 도구와 기체일 뿐입니다.

수업 후 숙제

1. 파이썬 언어의 양적 거래의 장점은 무엇입니까? 2., 발명자의 메인 언어로 몇 가지 일반적인 API를 작성하려고 시도합니까?

다음 섹션 예고

프로그래밍 언어에 대한 위의 소개를 통해 어떻게 선택해야하는지 알고 있다고 믿기 때문에 다음 몇 장에서는 프로그래밍 언어의 분류에 따라 학습을 대상으로 한 양적 거래 전략을 개발 할 것입니다.

3.2 마어어에 대한 빠른 소개

요약

메어 언어란 무엇인가? 메어 언어라고 불리는 것은 초기 주식 기술 지표에서 확장된 프로그래밍 함수집이다. 알고리즘을 하나의 함수로 포괄하여 사용자가 하나의 줄의 함수를 拼 블록 처럼 호출하는 것만으로 전략 논리를 구현한다.

그것은 "작은 문법, 큰 함수"의 구성 방식을 채택하여 작성 효율성을 크게 향상시킵니다. 다른 언어의 100 개 이상의 문장 전략은 일반적으로 10 개 이상의 문장을 작성 할 수 있습니다. 발명자의 정량화 도구와 함께 금융 통계 함수库 및 데이터 구조를 지원하며 일부 복잡한 거래 논리를 지원합니다.

전체 전략

이 부분의 주요 지식을 빠르게 이해하도록 돕기 위해, 발명가 양자화 언어에 대한 빠른 소개를 하기 전에, 이 부분의 명사 개념에 대한 초기 이해가 필요합니다. 우리는 또한 긴 50일 평균선과 짧은 10일 평균선을 기본 사례로 사용하고 있습니다.

다중 투입: 현재 포지션이 없다면, 그리고 마감 가격은 단기 평균선보다 크고, 그리고 마감 가격은 장기 평균선보다 크고, 그리고 단기 평균선은 장기 평균선보다 크고, 그리고 장기 평균선은 상승합니다.

빈장 오픈: 현재 포지션이 없다면, 그리고 마감 가격은 단기 평균선보다 작고, 마감 가격은 장기 평균선보다 작고, 단기 평균선은 장기 평균선보다 작고, 장기 평균선은 하락하는 경우.

다중 평면: 현재 많은 주문을 보유하고 있고, 폐업 가격은 장기 평균보다 작거나, 단기 평균이 장기 평균보다 작거나, 장기 평균이 하락한 경우.

공허한 평면: 현재 빈 주문을 보유하고 있고, 종료 가격이 장기 평균보다 크거나, 단기 평균이 장기 평균보다 크거나, 장기 평균이 상승한 경우.

메이어 코드로 작성하면 다음과 같습니다.img그림 3-3 마어어 전체 사례

완전한 양적 거래 전략을 작성하기 위해서는 일반적으로 다음과 같은 몇 가지 단계가 필요합니다. 데이터 획득, 데이터 계산, 논리 계산, 주문 구매 및 판매. 위의 그림에서 보여준 바와 같이, 코드 전체에서, 기본 데이터를 획득하는 API가 하나만 사용되며, 첫 번째와 두 번째 줄의 CLOSE 문이 있습니다. 그 다음 첫 번째부터 9번째 줄까지 데이터 계산 부분; 마지막으로 11번째부터 14번째 줄까지 논리 계산 및 주문 부분.

참고로, 보라색의 코드는 변수입니다. 첫 번째부터 9번째 줄까지 녹색의 : =은 赋值符, 赋值符의 오른쪽의 데이터 계산이 끝나면 赋值符의 왼쪽의 변수에 부여됩니다. 오렌지색의 코드는 API입니다. 예를 들어 첫 번째 줄에서 MA (평평선) 를 호출하려면 두 개의 매개 변수를 입력해야합니다.

기본 데이터

기본 데이터 (개시 가격, 최고 가격, 최저 가격, 종료 가격, 거래량) 는 양화 거래의 필수적인 부분이며, 전략에서 최신 기본 데이터를 얻을 수 있는 것은 발명자의 양화 도구의 API를 호출하는 것만으로도 가능합니다. 만약 역사의 기본 데이터를 얻으려면 REF 키를 사용할 수 있습니다. 예를 들어: REF (CLOSE, 1) 는 어제의 종료 가격을 얻을 수 있습니다.

변수

변수는 변할 수 있는 숫자이며, 변수 이름은 코드로 이해될 수 있으며, 명칭은 중국어, 문자, 숫자, 도표 모양의 명칭을 지원하지만 길이 31자 내에서 제어되어야 한다. 변수 이름은 서로 반복될 수 없으며, 매개 변수 이름과 반복될 수 없으며, 함수 이름 (API) 과 반복될 수 없으며, 각 문장은 분수로 끝나는 것이 좋다. 작성 후 자신의 언어 논문을 추가하고, 끝에서?? /?? 를 표시하고자 한다.img도 3-4 메이어 데이터 타입

변수 부여

변수 부여는 좌측 변수에게 변수 오른쪽의 값을 부여하는 것입니다. 총 4가지의 변수 부여가 있습니다. 숫자가 차트에 표시되는지 아닌지, 그리고 표시되는 위치를 정의하는 것을 제어할 수 있습니다. 아래 그림의 녹색 글꼴은 값표입니다. 각각??:??,??:=??,??^^??,??...??, 그림의 코드 설명 부분, 그 의미를 자세히 설명합니다.img그림 3-5 마어 언어 변수 부여

데이터 타입

마어어에는 여러 가지 데이터 타입이 있는데, 그중 가장 많이 사용되는 것은 숫자 타입, 문자열 타입, 부르 타입이다. 숫자 타입은 숫자이며, 정수, 소수, 음수 등이 포함된다. 예를 들어: 1, 2, 3, 1.1234, 2.23456...; 문자, 중국어, 영어 숫자 등으로 이해할 수 있는 문자 타입은 모두 문자형이다. 예를 들어: 발명자 정량화, CLOSEPRICE, 6000, 문자열 타입은 영어 분수로 싸워야 한다.

관계 연산자

관계 연산자는 이름 그대로 두 값의 관계를 비교하는 연산자이다. 각각 같고, 크고, 작고, 크고, 같고, 작고, 같고, 같지 않다.img그림 3-6 메어 언어 연산자

논리 연산자

논리 연산은 개별적인 부르 타입 문장을 하나의 전체로 연결할 수 있으며, 가장 많이 사용되는 것은?? AND?? ((그리고) 및?? OR?? ((또는) 이다. 두 개의 부르 타입 값이 있다고 가정하면, 각각 부르 닫기 가격이 열기 가격보다 크거나 부르 닫기 가격보다 크거나 부르 닫기 가격보다 크거나, 우리는 그것들을 부르 값으로 구성할 수 있다. 예를 들어: 부르 닫기 가격이 열기 가격보다 크거나, 그리고 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기 가격이 열기 가격보다 크거나, 부르 닫기img그림 3-7 메어 언어 논리 연산

여러분, 주의하세요: AND은 모든 조건이 에 맞을 때, 최종 조건이 에 맞을 때입니다. OR은 모든 조건에서, 어떤 조건 중 하나만 이라면, 최종 조건은 이다. AND&&,??OR

연산 연산자

일반적으로 사용되는 마카어 언어의 연산 연산자 (+,??-,*,/) 와 초등학교에서 배우는 수학은 다음과 같이 구별되지 않습니다.img그림 3-8 메이 언어 연산 연산

우선순위

만약 100* ((10-1) /(10+5) 표현식이 있다면, 프로그램이 먼저 계산하는 단계가 어디인가? 중학교 수학은 우리에게 말한다: (1) 같은 수준의 연산이라면 일반적으로 왼쪽에서 오른쪽으로 치며 계산한다. 2. 더하기, 빼기, 곱하기 두 가지 방법이 있으면 먼저 곱하고, 더하기, 빼기한다. 3. 괄호가 있다면, 괄호 안에 있는 것을 먼저 계산한다. 4. 연산법칙에 부합하면 연산법칙을 사용하여 축소할 수 있다.img도 3-9 메어 언어 연산 연산 우선 순위

실행 모드

발명가들의 정량화 도구의 메어 언어에서, 프로그램 전략은 총 2가지 모드를 실행한다. 즉: 클로즈 가격 모드 및 실시간 가격 모드. 클로즈 가격 모드는 현재 K 라인 신호가 형성되어 있으며, 하위 루트 K 라인의 시작시 즉시 거래가 실행된다. 실시간 가격 모드는 현재 K 라인 신호가 생성되어 즉시 거래가 실행된다.

일내 전략

일내 전략이라면, 뒷판 평형이 필요할 때, TIME 평형 시간 함수를 사용해야 한다. 이 함수는 초주기 이상, 일주기 이하에서 네자리 형태로 표시된다. 즉:HHMM ((145014:50점). 참고: TIME 함수를 뒷판 평형의 조건으로 사용하면, 오픈 조건도 그에 따른 시간 제한을 할 것을 권장한다. 아래 그림과 같이:img도 3-10 메어어 시간 함수

모델 분류

img그림 3-11 메이어 언어 모델 분류

마어 언어의 모델 분류는 두 가지 유형으로 나뉘어 있다. 즉: 비필터 모델과 필터 모델. 이것은 사실 잘 이해된다: 비필터 모델은 연속적으로 상장 신호 또는 평형 신호가 나타날 수 있도록 허용하고, 상장 및 평형 기능을 구현할 수 있다. 필터 모델은 연속적으로 상장 신호 또는 평형 신호가 나타날 수 있도록 허용하지 않는다. 즉, 상장 신호가 나타날 때, 그 다음 상장 신호가 평형 신호가 나타날 때까지 필터링된다. 비필터 모델의 신호의 순서는 다음과 같다: 열-평-열-평-열...

요약

이 모든 것이 마카어 언어에 대한 빠른 소개입니다. 학습 후 양적 거래 전략을 프로그래밍 할 수 있습니다. 더 복잡한 전략을 작성해야하는 경우 발명자의 양적 도구 마카어 언어 API 문서를 참조하거나 공식 고객 서비스 대리인을 직접 참조하십시오.

다음 섹션 예고

일내 거래는 또한 거래 모형으로, 이 방식은 밤새 보관하지 않습니다, 그래서 시장 변동률의 위험이 낮고, 불리한 시장이 발생하면, 적시에 조정 할 수 있습니다.

수업 후 숙제

1, 발명자의 양적 도구를 사용하여 Mac 언어의 기본 데이터를 얻기 위한 API를 작성하려고 노력합니다. 2 차트에서 변수 부여가 어떻게 표시되는가?

3.3 메이어로 전략을 세우는 방법

요약

이전 기사에서, 우리는 마어 언어의 소개, 기본 문법, 모델 실행 방법, 모델 분류 등에서 거래 전략을 구현하는 전제 부분을 설명했습니다. 이 기사에서 우리는 일반적인 전략 모듈, 기술 지표에서 단계적으로 실행 가능한 일상 양적 거래 전략을 구현하는 데 도움이되는 이전 내용을 계속할 것입니다.

전략 모듈

레고 블록 조각으로 로봇을 어떻게 쌓을 수 있는지 생각해보세요. 당신은 결코 위에서 아래로 또는 아래에서 위에서 한 조각으로 쌓을 수 없습니다. 조금은 상식적인 사람들은 머리, 팔, 다리, 날개 등을 각각 쌓아두고 완전한 로봇을 구성해야한다는 것을 알고 있습니다. 프로그램 작성도 마찬가지입니다. 필요한 기능을 전략 모듈로 작성하고 나서 하나의 전략 모듈을 개별적으로 구성하여 완전한 정량 거래 전략을 구성합니다.

단계적 상승

단계 상승은 루트 K 라인의 종료 가격과 이전 N 주기의 종료 가격의 차이점을 계산하는 비율이다. 예를 들어, 최근 10개의 K 라인의 단계 상승을 계산하면 다음과 같이 작성될 수 있다.img그림 3-12 메이어 단계의 증가

혁신이 높습니다.

재혁신 높이는 루트 K가 N주기보다 크는지 아닌지를 계산하는 것입니다. 예를 들어, 루트 K가 최근 10개의 루트 K가 가장 크는지 아닌지를 계산하는 코드를 다음과 같이 쓸 수 있습니다.img그림 3-13 메이어는 다시 혁신

발사대 공격

양량 상승은 가격 상승과 거래량이 급증하는 것으로 이해될 수 있다. 예를 들어: 만약 루트 K 라인의 종료 가격이 이전 10개의 K 라인의 종료 가격의 1.5배인 경우, 즉 10일 이내에 50% 상승; 거래량이 최근 10개의 K 라인의 평균보다 5배나 높으면.img그림 3-14 메이어 방량 상승

좁은 순서

좁은 정렬은 가격이 가까운 기간 동안 일정 범위 내에서 유지되는 것을 의미합니다. 예를 들어: 10 주기의 최고 가격과 10 주기의 최저 가격의 차이는 루트 K 라인의 종료 가격을 제외하고 약 0.05보다 작다면. 코드를 사용하면 다음과 같이 쓸 수 있습니다.img그림 3-15 메이어 언어의 좁은 정리

평형 다목적 배열

일평선 다목적 배열은 다목적 배열과 빈장 배열로 나뉘며, K선은 510203060 일평선 아래 지지 배열을 상향으로 다목적 배열로 나열하고, 다목적 배열은 시장 추세가 강한 상승세이다. 코드로 쓸 수 있다:img그림 3-16 메어어 평형 복소 배열

전기의 고점과 그 위치

이전 고점과 그 고점의 위치를 얻기 위해서는 발명자의 양측 도구의 API를 통해 직접 액세스 할 수 있습니다.img그림 3-17 메어 언어의 초기 고점

공백점

점프 공백은 두 개의 K 라인의 최하위 낮은 가격의 부착되지 않은 경우입니다. 두 개의 K 라인으로 구성되어 있으며, 점프 공백은 후속 지원 및 압력 포인트의 참조 가격입니다. 점프 공백이 나타나면 원래 점프 방향의 경향의 가속도가 시작되었다고 가정할 수 있습니다. 코드를 다음과 같이 작성할 수 있습니다.img그림 3-18 메어어 점프 빈 구문

일반적으로 사용되는 기술 지표

이동 평균

img그림 3-19 이동평균

통계학적인 관점에서 볼 때, 평균선은 매일 가격의 수학적 평균이며, 그것은 경향적인 가격 궤도를 가지고 있다. 평균선 시스템은 대부분의 분석가들이 흔히 사용하는 기술 도구이며, 기술적인 관점에서 기술 분석가의 심리적 가격 요인에 영향을 미치는 기술 분석가의 사고 구매 결정 요인이며, 기술 분석가의 좋은 참조 도구이며, 발명가의 정량화 도구는 다양한 유형의 평균선을 지원합니다. 아래 그림과 같이:img그림 3-20 메어어 다양한 지표 계산

BOLL 통로

img도 3-21 BOLL 통로 지도

BOLL (Bull's Belt) 은 통계학적 원리를 이용한 N일 이동평균선 기준으로 중심을 계산하고, 표준차별 기준으로 상승과 하락을 계산한다. BOLL 통로가 폭이 좁으면 가격이 점차적으로 평준으로 돌아가는 것을 나타낸다. BOLL 통로가 좁으면 폭이 넓으면 시장이 변화하기 시작한다는 것을 의미한다.

모든 기술 지표들 중에서 BOLL의 계산 방법은 가장 복잡한 것 중 하나이며, 통계학에서 표준차점 개념을 도입하여 중간선 (MB), 상승선 (UP) 및 하하선 (DN) 의 계산을 포함한다. 계산 방법은 다음과 같다:img도 3-22 메어 언어 브린밴드 계산

MACD 지표

img그림 3-23 MACD 지표

MACD 지표는 빠른 (단기) 및 느린 (장기) 이동평균과 그 집약과 분리의 기호를 사용하여 이중 평탄한 연산을 수행한다. 이동평균의 원리에 따라 개발된 MACD는 이동평균이 자주 잘못된 신호를 보내는 결함을 제거하고 이동평균의 효과를 유지하기 때문에 MACD 지표는 평형 추세, 안정성, 안정성 등의 특성을 가지고 있으며, 주식 구매 및 판매 시기를 판단하고 주식 가격 하락을 예측하는 기술적 분석 지표로 사용됩니다. 계산 방법은 다음과 같습니다.

img도 3-24 메어어 MACD 지표

위의 것은 양적 거래 전략을 개발하는 데 가장 많이 사용되는 전략 모듈입니다. 물론 실제로는 이것보다 훨씬 더 많습니다. 위의 모듈 예제를 통해 주체 거래에서 가장 자주 사용하는 몇 가지 거래 모듈을 직접 구현할 수 있습니다.

전략 작성

외환 현금 시장에서 유행했던 브레이크 트레이딩 전략은 HANS123 전략이다. 이 브레이크 트레이딩 전략은 거래 신호를 촉발시키는 판단 기준으로 단호한 오픈 후 N根 K 라인의 높은 지점과 낮은 지점을 브레이크하는 것이다. 이 또한 초기 입문 트레이딩 패턴이다.

전략적 논리

"이봐요, 이봐요, 이봐요, 이봐요, 이봐요, 이봐요, 이봐요, 이봐요. 열차가 시작된 후 30분 후 아래 경로 = 시작 후 30 분 후 낮은 지점; 그리고 그 다음에는, 그 다음에는, 그 다음에는, 이 지점에서는 시장의 시장이 급격히 하락하는 것을 볼 수 있습니다. 하루 내 거래 전략, 종료 전 평형;

전략 코드

img그림 3-25 메이 언어 전략 코드

요약

위에서는 전략 모듈의 개념을 배우고, 몇 가지 일반적인 전략 모듈 사례를 통해 발명자의 양적 도구에 대한 프로그래밍 방법을 익히고, 전략 모듈을 작성하는 법을 익히고, 프로그래밍 논리적 사고를 향상시키는 것이 단계적 양적 거래의 핵심 단계라고 할 수 있습니다. 마지막으로 우리는 발명자의 양적 도구로 구현하고, 외환 현장 거래에서 일반적으로 사용되는 거래 전략입니다.

다음 섹션 예고

아마도 친구들 중 일부는 혼란스럽고, 밀접한 코드들을 이해하지 못할 것입니다. 서두르지 마세요, 우리는 이미 당신을 위해 생각했고, 발명자의 양자 도구 중에도 시각화 프로그래밍이라는 작은 백색 사용자 사용에 더 적합한 프로그래밍 언어가 있습니다.

수업 후 숙제

1, 주체 거래에서 가장 자주 사용하는 거래 모듈을 몇 가지 직접 구현해보십시오. 2, 발명자의 계량화 도구의 마어어를 사용하여 KDJ 지표 알고리즘을 구현하려고 시도합니다.

3.4 시각화 프로그래밍에 대한 빠른 소개

요약

많은 주관적인 거래자가 양적 거래에 관심이 있고, 처음엔 자신감 넘치고, 전통적인 프로그래밍 언어의 기본 문법, 데이터 연산, 데이터 구조, 논리 제어 등을 배운 후에, 보시다시피, 길고 복잡한 코드 후에, 종종 다시 기대하거나, 단숨에 멈추는 것을 볼 때, 시각화 된 프로그래밍 언어가 당신을 도입하는 데 더 적합할 수 있습니다.

전체 전략

이 섹션의 주요 지식을 빠르게 이해하도록 돕기 위해, 발명가의 양적 시각화 프로그래밍 언어에 대한 빠른 소개를 하기 전에, 먼저 시각화 언어로 작성된 전략이 어떤지 살펴보고, 이 섹션의 명칭 개념을 처음 이해하도록 하자. 우리는 가장 간단한 클로저 가격으로 50 회계 평균보다 더 많은 것을 하고, 반대로 클로저 가격으로 50 회계 평균보다 작은 것을 비공식 예로 삼습니다:

다중 투입: 현재 포지션이 없는 경우, 그리고 종료 가격은 50주기 평균보다 크다.빈장 오픈: 현재 포지션이 없는 경우, 그리고 종료 가격은 50주기 평균보다 작습니다.다중 평면: 현재 여러 개의 주문을 보유하고 있으며, 매출 가격은 50주기 평균보다 작습니다.공허한 평면: 현재 빈 주문을 보유하고 있고, 폐업 가격은 50주기 평균보다 크다.

위 전략을 시각화 언어로 작성하면 다음과 같습니다:img도 3-26 시각화 된 언어 인터페이스

위 그림에서 보듯이, 전체 전략 설계 과정은: 시장 품종을 설정, K선 행렬을 획득, 상위 루트 K선의 50주기 평균을 획득, 상위 루트 K선의 종료 가격을 획득, 보유 행렬을 획득, 보유 상태를 판단, 종료 가격이 상위 라인보다 크거나 작는지 판단, 오픈 또는 평평을 실행하는 것이다.

여기서 주목해야 할 것은 배열 배열이라는 개념이다. 배열은 모든 프로그래밍 언어에 중요한 데이터 구조 중 하나입니다. 배열은 컨테이너와 같습니다. 그 안에 일련의 값을 저장할 수 있습니다. 예를 들어: K줄 배열을 얻는 API를 호출하면 다음과 같은 결과를 반환합니다.img도 3-27 K선 배열

위 그림의 코드는 K줄 배열입니다. 이 배열은 3개의 데이터로 구성되어 있습니다. 상위 루트 K줄의 데이터, 상위 루트 K줄의 데이터, 루트 K줄의 데이터입니다. 만약 우리가 이 배열의 값을 변수?? arr?? 에 부여한다면, 이 배열의 마지막 데이터를 얻으려면,img도 3-28 수열의 참조

사람들이 직접 두 번째 (제5줄) 를 쓰기 때문에, 현실에서 K줄의 데이터는 수백 개의 줄이 있고, 새로운 K줄은 계속 늘어나고 있다. 그래서 먼저 배열의 길이를 얻을 수 있다. arr.length는 배열의 길이를 얻을 수 있고, 그 다음 1을 빼고, 즉 최신 K줄의 데이터를 빼고 있다.

주의 깊게 보면, 이 자료들이 모두?? {}?? 로 포함된 것을 발견할 수 있을 것이다. 영어 이름에서 보면, 해당 값은 각각: 시간, 개시 가격, 최고 가격, 최저 가격, 종료 가격, 거래량이다. 만약 루트 K 라인의 종료 가격을 얻으려면, 바로 뒤에?? 을 더한다.?? + 필요한 값을 더하면 된다. 아래 그림 8-10 행을 참조하라.img도 3-29 대수의 참조

왜 시각화 프로그래밍 언어를 사용합니까?

이 개념을 가지고, 먼저 자바에서 Hello, world, 를 출력하는 프로그램을 작성하여 전통적인 프로그래밍을 경험해보도록 합시다.img그림 3-30

단순히 hello world! 문자열을 출력하는 것만으로도 5줄의 코드를 작성한다. 대부분의 초보자들은 hello, world, 그 외의 영어 단어들만 괄호 안에 있는 것으로 알고 있다.

시각화 프로그래밍이란 무엇인가요?

시각화 프로그래밍은 오래전부터 시작되어 새로운 것이 아닙니다. 이 모형은 다양한 컨트롤 모듈을 탑재하여 코드 로직을 구축하고 거래 전략을 설계하는 과정을 드래그 앤드러 방식으로 수행 할 수 있습니다.img그림 33-31

위 그림과 같은 동일한 프로그램은 블록리 시각화 프로그래밍에서 하나의 코드 라인만으로 처리됩니다. 이것은 프로그래밍의 문턱을 크게 낮추고 특히 프로그래밍을 전혀 모르는 거래자에게는 훌륭한 운영 경험을 제공합니다.

시각화 프로그래밍 언어의 특징

블록ly는 프로그래밍 장난감이 아니라 진정한 편집기입니다. 편집기 위장형의 운영 체제가 아니라, 변수, 함수, 대수, 확장하기 쉬운 사용자 지정 블록과 같은 많은 프로그래밍 기본 요소를 지원합니다.

발명가들의 양적 시각화 프로그래밍은 구글에서 출시한 Blockly 시각화 도구로 이루어졌습니다. MIT에서 출시된 스크래치와 비슷한 디자인으로, 진정한 제로 스레인 (아래의 그림) 입니다.img그림 33-32

발명가들의 양적 시각화 된 프로그래밍 인터페이스에는 수백 개의 일반적인 거래 모듈이 내장되어 있으며, 더 많은 거래 모듈이 추가되어 거래자의 새로운 아이디어와 새로운 응용 프로그램을 지원합니다. 이 모든 것은 개발자가 공동으로 개발하고 유지합니다.

문법은 간단하지만 성능은 잃지 않습니다. 대부분의 간단한 양적 거래 전략 개발을 거의 충족시킵니다. 기능, 속도, 파이썬, 자바스크립트와 같은 일반적인 프로그래밍 언어와 비교할 수 있습니다. 미래에는 논리적으로 복잡한 금융 응용 프로그램을 지원할 것입니다.

사용 방법

img그림 33-33

Hello, world 프로그램을 작성합니다.

img그림 33-34

실행, , hello, world을 인쇄

img그림 33-35

요약

위에서는 완전한 시각화 전략에서 시작하여 시각화 언어의 개요와 특징, 그리고 마지막으로 발명가 계량화 도구에서 시각화 언어를 사용하는 방법, 그리고 hello world?? 를 작성한 예로 설명합니다. 하지만, 상기시켜야 할 것은, 양량화 거래에 입문하기 위해 시각화 프로그래밍이 좋은 문턱을 누르는 것이긴 하지만, 현재 발명가 계량화 도구에는 제한된 API 인터페이스만 개방되어 있으며, 양량화 거래에 있어서는 그것을 전략 논리를 정리하는 데 도움이 되는 보조 도구로 사용하는 것이 좋습니다.

다음 섹션 예고

시각화 프로그래밍은 고급 프로그래밍 언어의 기초와 크게 다르지 않으며, 심지어는 일부 지역에서는 일반적이기도 하다. 시각화 프로그래밍을 배운다는 것은 고급 프로그래밍을 배우는 것에서 더 멀리 떨어져 있다. 다음 섹션에서는 발명자 정량화 도구에서 일반적인 정량화 거래 모듈을 작성하는 방법, 그리고 완전한 내일 거래 전략을 개발하는 방법을 포함하여 시각화 프로그래밍의 진보를 깊이 학습할 것이다.

수업 후 숙제

1, 발명가들의 시각화 프로그래밍 인터페이스를 정량화하고, API를 사용하고, 그들의 의미를 이해합니다. 2, 시각화 언어를 사용하여 최신 오픈 가격을 얻고 로그에 출력합니다.

3.5 시각화 언어로 전략을 구현하는 방법

요약

이전 기사에서는 시각화 프로그래밍 언어의 개요와 특징, hello world 예제, 그리고 발명가들의 양적 거래 도구에서 전략을 작성하는 것과 같은 부분에서 거래 전략을 구현하는 전제 부분을 설명했습니다. 이 기사에서는 일반적인 전략 모듈과 기술 지표에서 시작하여 전략 논리에 이르기까지 단계적으로 모든 사람들이 완전한 내일 거래 전략을 구현하는 데 도움이되는 다음 기사로 이어집니다.

전략 모듈

단계적 상승

단계 상승은 루트 K 라인의 종료 가격과 이전 N 주기의 종료 가격의 차이점을 계산하는 비율이다. 예를 들어, 최근 10개의 K 라인의 단계 상승을 계산하면 다음과 같이 작성될 수 있다.img그림 33-36

위의 코드는 컴퓨터가 수행하는 방식이 완전한 논리 루프를 필요로 한다는 것을 알 수 있다. 예를 들어, 최근 10개의 K선 단계 상승을 계산하려면 다음 단계로 분해해야 한다. 먼저 컴퓨터가 어떤 품종을 거래할 것인지 명확하게 알고 있어야 합니다. 예를 들어, 위의 예제에서 메톨로를 사용해서 계약 코드를 MA888로 설정합니다. 계약 코드를 설정하면 해당 계약의 K 라인 데이터를 얻을 수 있습니다.

K선 데이터와 함께, 이 K선 데이터에서, 어떤 K선에 대한 상세한 데이터를 얻을 수 있다. 통계단계 상승을 위해서는 먼저 2개의 K선 종료값을 얻어야 한다. 예를 들어: 상위 루트 K선 종료값과 앞 11번째 K선 종료값.

마지막으로 이 2개의 K선 종결값에 따라 단계 증가율을 계산한다. 아래 각 전략은 이러한 논리적 루킹과 조건적 속성의 규정된 특성을 가지고 있으며, 이 논리를 이해하면 시각화 프로그래밍도 훨씬 쉬워진다.

발사대 공격

양량 상승은 가격 상승과 거래량이 급증하는 것으로 이해될 수 있다. 예를 들어: 만약 루트 K 라인의 종료 가격이 이전 10개의 K 라인의 종료 가격의 1.5배인 경우, 즉 10일 이내에 50% 상승; 거래량이 최근 10개의 K 라인의 평균보다 5배나 높으면.img그림 33-37

공백점

점프 공백은 두 개의 K 라인의 최하위 낮은 가격의 부착되지 않은 경우입니다. 두 개의 K 라인으로 구성되어 있으며, 점프 공백은 후속 지원 및 압력 포인트의 참조 가격입니다. 점프 공백이 나타나면 원래 점프 방향의 경향의 가속도가 시작되었다고 가정할 수 있습니다. 코드를 다음과 같이 작성할 수 있습니다.img그림 33-38

일반적으로 사용되는 기술 지표

EMA 평균

통계학적인 관점에서 볼 때, 평균선은 매일 가격의 수학적 평균이며, 그것은 경향적인 가격 궤도를 가지고 있다. 평균선 시스템은 대부분의 분석가들이 흔히 사용하는 기술 도구이며, 기술적인 관점에서 기술 분석가의 심리적 가격 요인에 영향을 미치는 기술 분석가의 사고 구매 결정 요인이며, 기술 분석가의 좋은 참조 도구이며, 발명가의 정량화 도구는 다양한 유형의 평균선을 지원합니다. 아래 그림과 같이:img그림 33-39

MACD 지표

MACD 지표는 빠른 (단기) 및 느린 (장기) 이동평균과 그 집약과 분리의 기호를 사용하여 이중 평탄한 연산을 수행한다. 이동평균의 원리에 따라 개발된 MACD는 이동평균이 자주 잘못된 신호를 보내는 결함을 제거하고 이동평균의 효과를 유지하기 때문에 MACD 지표는 평형 추세, 안정성, 안정성 등의 특성을 가지고 있으며, 주식 구매 및 판매 시기를 판단하고 주식 가격 하락을 예측하는 기술적 분석 지표로 사용됩니다. 계산 방법은 다음과 같습니다.img그림 3-40

KDJ 지표

KDJ 지표는 동력 개념, 강도 지표 및 이동 평균의 장점을 통합하여 주가 가격의 정상적인 범위에서 벗어나는 정도를 측정하는 데 사용됩니다. 종료 가격뿐만 아니라 최근 최고 및 최저가 고려되므로 종료 가격에만 고려하여 진정한 변동의 약점을 무시하는 것을 피합니다. 계산 방법은 다음과 같습니다:img그림 3-41

전략 작성

워렌 버핏의 멘토인 벤자민 그레이엄은 "지혜로운 투자자"라는 책에서 주식과 채권의 동적 균형 거래 방식을 언급했다.

이 거래 모델은 매우 간단합니다. 주식 펀드에 50%를 투자하고, 나머지 50%를 채권 펀드에 투자합니다. 즉, 주식과 채권은 각각 절반을 차지합니다.

고정된 시간 간격이나 시장 변화에 따라 한 번 재균형하여 주식 자산과 채권 자산의 비율을 원래의 1:1로 되돌려줍니다. 이것이 전체 전략의 전체 논리이며 언제 구매하고 얼마나 구매하는지 포함합니다. 간단합니다!

이 방법에서는 채권펀드의 변동률이 주식 변동률보다 훨씬 낮기 때문에, 채권은 여기서 '반응 유동'으로 간주된다. 즉, 채권으로 주가가 너무 많이 벌어지고, 너무 적게 벌어지는지 측정한다.

주식 가격이 상승하면 주식의 시가치가 채권의 시가치보다 커지고, 두 가지의 시가치 비율이 설정된 문턱을 초과하면 전체 지위를 재조정하여 주식을 판매하고 채권을 구입하여 주식 채권 시가치 비율을 초기 1:1로 되돌립니다.

반대로, 주식 가격이 하락하면 주식의 시가치가 채권의 시가치보다 작아지며, 두 가지의 시가치 비율이 설정된 문턱을 초과하면 총 포지션이 재조정되어 주식을 구입하고 채권을 판매하여 주식 채권 시가치 비율이 초기 1:1로 돌아갑니다.

따라서 동전과 채권 사이의 비율을 동적으로 균형 잡는 것은 주식 성장의 열매를 누릴 수 있고 자산의 변동성을 줄일 수 있습니다. 가치 투자의 선구자로서 그레이엄은 우리에게 좋은 아이디어를 제공합니다.

전략적 논리

현재 BTC의 가치에 따라 계좌 잔액은 현금 5000 엔과 BTC 0.1을 보유하며, 즉 현금과 BTC 시장 가치의 초기 비율은 1:1이다.

만약 BTC의 가격이 ¥6000, 즉 BTC의 시장 가치가 계정 잔액보다 커지고 그 사이의 차이는 설정된 문턱을 초과하면, 판매 (<6000-5000) /6000/2 동전. BTC가 상승한 것을 표시하고 돈을 다시 교환하십시오.

만약 BTC의 가격이 ¥4000로 떨어지면, 즉 BTC의 시장 가치가 계좌 잔액보다 작고 그 사이의 차이는 설정된 약점에 해당하는 경우, BTC가 약화되었다는 것을 표시하고 BTC를 다시 구매하십시오.

따라서, BTC가 부가가치나 부가가치에 상관없이, 항상 동적으로 BTC의 시장 가치와 동일한 계좌 잔액을 유지합니다. BTC가 부가가치되면 몇 개를 구입하고, 다시 부가가치로 돌아와서 더 많은 것을 판매합니다.

구매 조건: 현재 보유한 시장가치가 현재 사용 가능한 잔액을 빼면 현재 사용 가능한 잔액의 -5%보다 작으면, 거래를 개시한다.판매 조건: 현재 보유한 매출액이 현재 사용 가능한 잔액의 5%보다 많으면 현재 사용 가능한 잔액의 5%를 빼면 평형 판매된다.

필수 조건

  • 현재 시장
  • 현재 자산
  • 동전의 총 시장 가치
  • 자산 부족

전략 구축

시각화 작성 전략 1단계

우리는 거래 전략의 네 가지 필수 조건들을 계산하고 각각의 변수에 각각 값을 부여합니다. 시각화 프로그래밍을 위해, 코드 블록은 다음과 같습니다.img그림 3-42

참고로, 총화폐 시장 가치는 현재 보유된 총화폐의 총 시장 가치이며, 계산 방법은 현재 보유된 총화폐 수를 현재 최신 가격으로 곱하는 것입니다. 자산 격차는 총화폐 시장 가치를 현재 사용 가능한 잔액을 빼는 것입니다.

시각화 작성 전략 2단계

전제적 필수 조건 부여가 완료되면 거래 논리를 작성해야 합니다. 이것은 상상할 수 있는 만큼 복잡하지 않습니다. 위의 전략 논리를 코드 블록의 형태로 표현하는 것 만입니다.

즉, 자산이 유효금액의 마이너스 5% 미만인 경우 매입되고, 유효금액의 5% 미만인 경우 매각된다. 아래 그림과 같이:img그림 3-43

전체 전략은 이미 작성된 것처럼 보이지만, 프로그램이 위에서 아래로 실행되고 실행이 끝나면 중단된다는 것을 알아야 합니다. 그러나 우리의 거래 전략은 거래 조건을 한 번 실행하는 것이 아니라 반복적으로 반복적으로 실행하는 것입니다.

즉, 프로그램이 정책 조건이 충족되었는지 계속 확인하는 것을 필요로 하고, 구매를 실행하는 경우, 그렇지 않은 경우 계속 확인하는 것을 필요로 한다. 이 때, 다음과 같은 또 다른 순환 문장을 사용해야 한다.img그림 3-44

전략 재검토

시각화 전략은 다른 프로그래밍 언어에서 작성된 전략과 본질적으로 다르지 않으며, 여러 주기를 지원하고, 정확한 역사 데이터 테스트를 수행하며, 물론 국내외 상품 선물 및 디지털 통화 실제 거래도 지원합니다.img그림 3-45

이 시점에서 완전한 거래 전략은 완성되지 않았습니다. 이 전략은 전략 광장에 공유되어 연구 결과를 직접 복사 할 수 있습니다.

10,000시간 법칙은 항상 존재하지만, 0기준의 거래자에게는 10,000시간이 불가능합니다. 그래서 당신은 사다리를 가지고 있어야 합니다. 그리고 0기준의 거래자에게는 발명가의 양적 시각화 프로그래밍은 빠른 입문의 사다리입니다.

시각화 프로그래밍을 사용하면 문법과 방법의 이름을 기억할 필요가 없으며 기능 모듈을 단순히 탐색하여 원하는 것을 찾을 수 있습니다. 또한, 배량화의 발명가의 본래의 목적은 더 많은 배량화의 초보자가 입문 경계를 낮추고 배량화에 대한 흥미를 높이고 모든 사람이 배량 거래자가 될 수 있도록 돕는 것입니다!

그러나, 다시 말해서, 시각화 프로그래밍은 양량화 입문으로 문턱을 두드리는 것은 전혀 문제가 없지만, 너무 복잡하고 너무 세밀한 거래 전략을 개발할 수 없다는 것과 같은 한계도 있습니다.

다음 섹션 예고

양적 거래의 전문성에서, 마어 언어와 시각화 언어는 양적 거래 세계로 들어가는 과도기 언어에 불과하다. 그들의 언어 특성은 양적 거래 전략 개발의 한계를 결정하고, 복잡한 전략이 실현될 가능성이 거의 없다. 그래서 다음 섹션에서 우리는 당신이 자바스크립트를 배우도록 데려갈 것입니다. 그것은 공식적인 고급 프로그래밍 언어이며, 당신이 고급 양적 거래를 진행하는 데 필요한 길입니다.

수업 후 숙제

1, 시각화 언어로 브린밴드 지표를 구현하려고 노력합니다. 2, 이 섹션의 거래 모듈을 사용하여 거래 전략을 수행하려고 시도하십시오.

제4장 주류 프로그래밍 언어에서 거래 전략을 구현

4.1 자바스크립트 언어에 대한 빠른 소개

요약

미래 양량 거래의 신인으로서, 간단한 언어를 배우는 것만으로는 충분하지 않을 것입니다. 양량 거래 도구의 발명가인 마이 언어와 시각화 언어는, 당신을 입문시킬 수 있지만, 그들의 언어 특성으로 인해 전략 개발에 많은 한계가 있습니다. 따라서, 양량 거래에 입지를 잡으려면 공식적인 프로그래밍 언어를 배워야합니다.

자바스크립트 언어를 배우기 위한 이유

시각화 언어에 비해, 자바스크립트 언어는 더 강력한 성능과 실행 효율성을 가지고 있다. 그리고 정책 개발에 있어서, 자바스크립트 언어는 시각화 언어보다 훨씬 유연하다. 예를 들어, 당신이 하나의 집합 정책 개발을 원한다면, 시각화 언어는 불가능하다. 왜냐하면 그것은 제한된 모듈이기 때문에, 이와 같은 집합 정책 정책을 지원하지 않기 때문에, 자바스크립트 언어는 쉽게 이길 수 있다.

또한, 자바스크립트 언어는 시각화 언어보다 간결하고 우아합니다. 예를 들어: 시각화 언어는 10 줄의 코드를 작성할 수 있으며, 자바스크립트에서는 5 줄로 작성할 수 있습니다. 어떤 면에서 볼 때, 시각화 언어는 단지 자바스크립트의 문자 버전이며, 코드의 실행 방식과 논리는 자바스크립트와 거의 같습니다.

자바스크립트 언어 설명서

자바스크립트는 공식적인 고급 프로그래밍 언어이다. 그것은 프로그래밍을 배우기 위한 입문 언어로서도 적합하며, 일상적인 개발의 작업 언어로서도 적합하다. 그것은 현재 가장 유망하고 밝은 미래가 있는 컴퓨터 언어 중 하나이며, 현재까지 브라우저 쪽에서 흔들리지 않는 지배적인 위치를 가지고 있다. 그것은 웹 페이지 개발으로 유명하지만, 그것은 또한 많은 비 브라우저 환경에서 사용되고 있다. 예를 들어: 서버, PC, 모바일, 그리고 물론 그것은 또한 거래의 양을 할 수 있다!

전체 전략

이 부분의 핵심 지식을 빠르게 이해하는데 도움을 주기 위해, 개발자 양자 자바스크립트 언어에 대한 빠른 소개를 하기 전에, 이 부분의 명사 개념에 대한 초기 이해가 필요합니다. 우리는 가장 간단한 쌍평선 전략을 사용하여 예로 들겠습니다:

다중 투입: 현재 포지션이 없으면, 5주기 평균선이 20주기 평균선보다 크다.빈장 오픈: 현재 포지션이 없으면, 5주기 평균선은 20주기 평균선보다 작다.다중 평면: 만약 현재는 여러 개의 주문을 보유하고 있고 5주기 평균선이 20주기 평균선보다 작다면.공허한 평면: 만약 현재 공백을 가지고 있고, 5주기 평균선이 20주기 평균선보다 크다면.

자바스크립트 언어로 작성하면 다음과 같습니다.img그림 4-1

위 그림의 코드는 자바스크립트 언어로 작성된 완전한 양적 거래 전략이다. 실제 실행될 수 있으며 자동으로 주문을 할 수 있다. 코드 크기에 따라, 이 언어는 시각화 언어보다 더 간단하다. 전체 전략의 설계 과정은: 시장을 설정하는 종류, K 라인 데이터를 얻는 것, 보유 정보를 얻는 것, 거래 논리를 계산하는 것, 구매 주문을 하는 것.

아이디

자바스크립트에서 모든 ((변수, 함수 이름, 그리고 동작자) 는 대문자로 구분된다. 즉, 변수 이름 테스트와 변수 이름 테스트는 두 개의 다른 변수이다. 식별자 ((변수, 함수, 속성, 함수 파라미터 이름) 의 첫 번째 문자는 문자, 밑줄기 (_), 달러 ($) 의 문자가어야 하며, 그 다음 문자는 숫자일 수도 있습니다.img그림 4-2

참고자료

참고문헌에는 단行注解과 블록 차원의注解이 포함된다. 단行注解는 두 개의 슬라이드로 시작, 블록注解는 슬라이드와 별자리로 시작된다./) 별과 슬라이드로 시작됩니다)))/) 끝으로, 아래 그림이 보여집니다:img그림 4-3

문장

각 문장에는 소수점 끝이 있다; 이것이 필수적인 것은 아니지만, 우리는 결코 그것을 생략하지 않는 것이 좋습니다. 소수점을 추가하면 어떤 경우에 코드 성능을 높일 수 있습니다.img그림 4-4

변수

변수는 모든 유형의 데이터를 저장할 수 있으며, 변수를 생성할 때 var 오퍼레이터를 사용해야 하며, 변수 이름 뒤에 ▲ 변수를 정의할 때 변수의 값을 동시에 설정할 수 있다. 변수를 생성한 후 다시 변수의 값을 설정하면 var 오퍼레이터를 사용하지 않아도 된다.img그림 4-5

데이터

자바스크립트에는 5가지의 데이터 타입이 있습니다. 정의되지 않은 (Undefined), 공허한 (Null), 붐값 (Boolean), 숫자 (Number), 문자열 (String) 등이 있습니다.img그림 4-6

Undefined에는 하나의 값, 즉 특수undefined이 있습니다. 그것은 아직 설정되지 않은 값을 나타냅니다. 예를 들어, 우리는 하나의 변수를 정의하고 그 변수에 값을 설정하지 않습니다. 그 변수의 값은undefined입니다.

Null는 하나의 값, 즉 특수null을 가지고 있으며, 이는 null로 설정된 값을 나타냅니다. 예를 들어, 우리는 먼저 변수를 생성하고 변수의 값을null로 설정하면, 그 변수의 값이 반환되는 값은null입니다.

True과?? False의 두 가지 값이 있다. True는 True, False는 False이다. 참고로, True False은 모두 소문자로 쓰여져 있다.

숫자란 숫자의 종류를 뜻한다. 이 숫자는 긍정, 음수, 정수, 소수 등등을 포함한다. 또한, NaN은 특별한 숫자이기도 하며, 예를 들어, 1을 0으로 나누면 NaN을 반환하는 경우를 나타낸다.

String은 문자라고 이해할 수 있고, 중국어와 영어를 포함하고 있으며, 단호 또는 이중호로 문자열을 구성할 수 있습니다. 예를 들어:?? fmz?? 또는?? 발명자 양화?? 등.

객체

객체는 다양한 데이터를 저장하는 컨테이너로 이해할 수 있으며, 컨테이너의 속성과 값이 일치합니다. new 오퍼레이터를 통해 먼저 컨테이너를 만들 수 있습니다. 그리고 다음 그림과 같이 생성된 객체에 속성과 방법을 추가 할 수 있습니다.img그림 4-7

대수군

대수열은 다양한 데이터를 저장하는 컨테이너이기도 하지만 컨테이너의 요소는 왼쪽에서 오른쪽으로 순서대로 배치되어 있으며, 첫 번째 요소는 0이고 두 번째 요소는 1이며, 기타. 또한 자바스크립트의 대수열은 다음과 같이 모든 유형의 데이터를 저장할 수 있습니다.img그림 4-8

함수

자바스크립트의 함수들은 우리가 중학교에서 배운 함수들과 본질적으로 다르지 않습니다.img그림 4-9

연산자

자바스크립트에는 여러 가지 연산자가 있습니다. 연산자, 비교 연산자, 논리 연산자. 이 중 연산자란 덧셈 곱셈의 수학 연산자이며, 비교 연산자는 두 값의 크기를 비교할 수 있습니다.img그림 4-10 참고로:?? &&?? 는 논리적인 것과,?? 를 대표하는 것과?? 의 의미이다. &&는 모든 조건이 true에 해당하는 경우, 최종 조건이 true에 해당하는 경우입니다.

우선순위

만약 100* ((10-1) /(10+5) 의 표현식이 있다면, 프로그램이 먼저 계산하는 단계가 어디인가? 중학교 수학은 우리에게 이렇게 알려준다: (1) 같은 수준의 연산이라면 일반적으로 왼쪽에서 오른쪽으로 계산한다。2 더하기, 빼기, 곱하기 두 가지 방법이 있으면 먼저 곱하고, 더하기, 빼기 한다。3 괄호가 있다면, 괄호 안에 있는 것을 먼저 계산한다。4 연산법칙에 부합하면 연산법칙을 사용하여 축소할 수 있다。JavaScript 언어의 우선 순위는 다음과 같다:img그림 4-11

조건 문장

일반적으로 코드를 작성할 때, 당신은 항상 다른 결정을 위해 다른 동작을 수행해야 합니다. 당신은 코드에서 조건 문장을 사용하여 작업을 수행 할 수 있습니다. 자바스크립트에서는 다음과 같은 조건 문장을 사용할 수 있습니다. if 문장 - 지정된 조건이 true일 때만 이 문장을 사용하여 코드를 실행합니다 if...else 문장 - 조건이 true일 때 코드를 실행하고 false일 때 다른 코드를 실행합니다 if...else if...else 문장 - 이 문장을 사용하여 여러 코드 블록 중 하나를 선택하여 실행합니다 스위치 문장 - 이 문장을 사용하여 여러 코드 블록 중 하나를 선택하여 실행합니다.

if 문장

지정된 조건이 true일 때만 이 문구가 코드를 실행한다. 작아 쓰인 if을 사용하라. 대문자 ((IF) 를 사용하면 JavaScript 오류가 발생한다. 아래 그림에서 보여준 바와 같이:img그림 4-12#

if...else 문장

조건이 true일 때 코드를 실행하고 조건이 false일 때 다른 코드를 실행합니다.img그림 4-13

for 순환

때때로 우리는 최근 몇 일 동안의 K선 데이터를 얻어야 합니다. K선 배열에서 K선 데이터의 위치에 따라 순차적으로 얻어야 합니다.img그림 4-14

while 순환

우리는 시장이 끊임없이 변화하고 있다는 것을 알고 있습니다. 만약 여러분이 최신의 K선 배열을 얻고 싶다면 계속해서 같은 코드를 반복해서 실행해야 합니다. 그러면 whilex 루프를 사용해서 조건이 true인 한 루프는 항상 최신의 K선 배열을 얻을 수 있습니다.img그림 4-15

break 문장과 continue 문장

루킹은 전제 조건이 있다. 전제 조건이??true일 때만 루킹이 반복적으로 어떤 일을 시작하여 전제 조건이??false일 때까지 루킹이 종료된다. 그러나 break 문장은 루킹 실행 과정에서 즉시 루킹을 건너갈 수 있다. continue 문장은 한 번 루킹을 중단하고 다음 루킹을 계속할 수 있다. 아래와 같이:img그림 4-16

return 문장

return 문장은 함수의 실행을 종료하고 함수의 값을 반환합니다. return 문장은 함수체 내에서만 나타납니다.img그림 4-17

CTA 전략 구조

발명가들의 정량화 도구에서, 자바스크립트 언어로 정책을 작성하는 것이 매우 편리할 경우, 공식적인 기본 정책 프레임워크가 내장되어 있습니다.img그림 4-18

위 그림의 코드처럼, 이것은 표준 전략 프레임 워크입니다. 이 밖에도 변경할 수 있는 상품 선물 품종 코드 이외에, 다른 것들은 고정된 형식입니다. 프레임 워크를 사용하여 전략을 작성하는 가장 큰 장점은 당신이 단지 전략을 작성하는 논리를 작성하는 것만으로도 가능하다는 것입니다. 다른 산업은 취득, 단일 처리 등 일련의 문제를 프레임 워크에서 처리합니다.

요약

자바스크립트 언어에 대한 간단한 소개입니다. 자바스크립트 언어 API 문서를 참조하여 더 복잡한 전략을 작성할 필요가 있는 경우 참조하십시오.

다음 섹션 예고

일내 거래는 또한 거래 방식의 하나로, 이 방식은 밤새도록 보유하지 않기 때문에 시장 변동의 위험이 낮고, 불리한 시장이 발생하면 적시에 조정 할 수 있습니다. 이 섹션의 자바스크립트 언어의 소개를 배운 다음 섹션에서는 실행 가능한 일내 양적 거래 전략을 작성하는 데 도움을 줄 것입니다.

수업 후 숙제

1, 발명자의 계량화 도구의 자바스크립트 언어를 사용하여 역사 K 라인 데이터를 얻으려는 시도. 2, 이 섹션의 시작에 있는 전략 코드를 작성하고 설명서를 작성해보십시오.

4.2 자바스크립트를 사용하여 전략 거래를 구현하는 방법

요약

이전 기사에서는 자바스크립트 언어의 소개, 기본 문법, CTA 전략 프레임워크 등에서 거래 전략을 구현하는 전제 부분을 설명했습니다. 이 기사에서는 일반적인 전략 모듈, 기술 지표에서 실행 가능한 일상의 정량화 거래 전략을 구현하는 데 도움이되는 단계적 단계로 이전 내용을 계속할 것입니다.

전략 개요

브린 밴드는 브린 통로 (BOLL) 라고도 불린다. 1980년대에 존 볼링저 (John Bollinger) 가 발명한 가장 일반적으로 사용되는 기술 지표 중 하나입니다. 이론적으로는 가격이 항상 가치에 따라 일정 범위 내에서 상하위 변동을 합니다. 브린 밴드는 이 이론의 기초를 바탕으로 가격 통로 의 개념을 도입했습니다.

그 계산 방법은 통계학적 원리를 이용하여, 먼저 가격의 한 시간 동안의 표준차이를 계산하고, 그 다음 평선 더하기/ 빼기 2배의 표준차이를 계산하여, 가격의 신뢰 간격을 구한다. 그것의 기본 형식은 3개의 궤도선으로 구성된 띠 모양의 통로 (중간선, 열차선, 열차선) 이다. 중간선은 가격의 평균 비용이며, 열차선과 열차선은 각각 가격의 압력선과 지지선을 나타낸다.

표준편차의 개념이 채택되어 있기 때문에, 브린 통로의 폭은 최근 가격의 변동에 따라 동적 조정을 하게 된다. 작은 변동은 브린 통로가 좁아지고, 큰 변동은 브린 통로가 넓어진다. BOLL 통로가 폭에서 좁아지면 가격이 점차적으로 평형으로 돌아가는 것을 의미한다. BOLL 통로가 좁아지면 폭이 넓어지면 시장이 변화하기 시작한다는 것을 의미한다. 가격이 상승하면 구매력이 증가하고, 가격이 하락하면 판매력이 증가한다는 것을 의미한다.

브린 띠 지표 계산 방법

모든 기술 지표들 중에서, 브린 띠를 계산하는 방법은 가장 복잡한 방법 중 하나이며, 통계학에서 표준차점 개념을 도입하여, 중간선 (MB), 상승선 (UP) 및 하하선 (DN) 의 계산을 포함한다. 그 계산 방법은 다음과 같다:

중부 궤도= N 시간 동안의 단순한 이동 평균열차로= 중궤도 + K × N 시간대의 표준편차철도 아래= 중궤도 − K × N 시간대의 표준편차img그림 4-19

전략적 논리

브린 라인의 사용 방법은 여러 가지가 있으며, 단독으로 사용하거나 다른 지표와 함께 사용할 수 있습니다. 이 섹션에서 우리는 브린 라인의 가장 간단한 사용 방법을 사용합니다. 즉, 가격이 아래에서 위로 경로를 돌파 할 때, 즉 위압 라인을 돌파 할 때, 우리는 다방면 힘이 강해지고 있다고 생각합니다.


관련

더 많은

해일하이드라2좋은 기사입니다!

빈 공간 정량화표지