Monday, 26 March 2018

신경 네트워크 forex 전략


신경망.
신경 네트워크는 거래에서 최근 유행어 중 하나입니다. 시원하고 세련된 것 같습니다. 너무 많은 사람들이 신경 네트워크가 무엇인지를 이해하는 것처럼 보이지 않습니다.
실제 세계의 뉴런.
우리의 두뇌는 놀랍게 복잡합니다. 그러나 대부분의 사람들이 놀랍게도 두뇌는 회로의 거대한 상자라고 할 수 있습니다. 뉴런은 축색이라 불리는 전기 전선이 회로처럼 작동하는 세포입니다. 당신이하는 모든 동작, 인식 또는 행동은 모든 축삭이 전기 충격을 가하는 것의 합입니다. 변화는 뉴런에서 보낸 전기 충격의 빈도가 변할 때마다 발생합니다. 더 많은 충동은 한 반응을 일으키고, 감소는 다른 반응을 일으 킵니다.
뉴럴 네트워크는 정보를 뉴런으로 조직함으로써 인간의 뇌의 과정을 에뮬레이트하려고합니다. 실제 뉴런 세포와는 달리, 네트워크 뉴런은 기계에만 존재합니다. 그것은 연구중인 모든 것에 관한 정보가 들어있는 기계 중량입니다.
거래 시스템을위한 신경 네트워크는 이동 평균, RSI 및 Stochastics 발진기와 같은 공통 지표를 연구하기로 결정할 수 있습니다. 현재 막대의 이동 평균값은 고유 한 뉴런으로 계산됩니다. RSI가 다르므로 별도의 신경이됩니다. 도구 상자에 10 개의 표시기가 있으면 내 네트워크에 10 개의 뉴런이 있습니다.
컴퓨터는 전통적으로 선형적이고 간단한 문제를 해결합니다. 355의 큐브 루트와 같은 수학 연산의 결과를 알고 싶으면 컴퓨터가 작업에 가장 적합합니다. 그들은 신속하게 정확한 답을 계산합니다.
인간의 두뇌와 마찬가지로, 신경 네트워크는 다른 뉴런과 시냅스를 형성합니다. 훈련을 받으면 뉴런 그룹이 패턴을 인식하는 법을 배울 수 있습니다. 신경망을 매우 유용하게 만드는 것은 바로이 속성입니다. 이를 통해 전통적인 컴퓨팅에서는 불가능한 프로그램을 만들 수 있습니다. 예를 들어, 얼굴을 인식하는 소프트웨어 프로그램을 만드는 것은 매우 어려울 것입니다. 네트워크 얼굴을 반복적으로 보여줌으로써 얼굴을 인식하도록 네트워크를 훈련하는 것이 훨씬 쉽습니다.
두뇌는 그 자체로 흥미로운 주제입니다. 제쳐두고, 제 아내와 저는 The Great Courses의 비디오 시리즈를 통해 신경 과학의 설문 코스를 수강하고 있습니다. 주제에 관심이 있으시면 Jeanette Norden의 두뇌 이해하기를 적극 권장합니다. 뉴런이 뇌와 전신을 통해 해부학에 어떻게 연결되는지 자세히 설명합니다.
신경망 및 외환 거래.
신경망은 그 해답이 정확하지 않을 때 작용한다. 이 블로그의 외환 거래 주제를 고수하면 완벽한 거래 시스템을 만드는 것에 대한 정답은 없습니다. 전형적인 소매 투자자는 최고의 거래 시스템이 가장 많은 돈을 버는 시스템이라고 말할 수 있습니다. 또 다른 최고의 거래 시스템은 샤프 비율이 가장 높은 시스템이라고 말할 수 있습니다. 많은 사람들이 중간에 뭔가를 원합니다.
"최상의 거래 시스템"문제는 모호하며, 신경망 공격에 이상적인 후보가됩니다. 디자이너는 상인의 견해로 최상의 시스템을 수치로 측정하는 일련의 규칙을 설명합니다.
인간의 두뇌는 약 1 천억 개의 뉴런을 수용합니다. 많은 고객들의 최선의 노력에도 불구하고 나는 아직 처분 할 수있는 1,000 억 개의 시장 지표를 가진 사람을 만나지 않았습니다. 툴박스에서 뉴런의 효과를 증폭시키는 한 가지 방법은 숨겨진 레이어를 만드는 것입니다.
네트워크는 여러 개의 레이어로 구성되며 각 레이어는 여러 개의 뉴런으로 구성됩니다. 각 뉴런은 다음 계층의 모든 뉴런에 연결됩니다. 모든 연결에는 고유 한 가중치가 적용됩니다. 뉴런은 뉴런의 값과 나가는 연결의 무게를 곱함으로써 값을 전달합니다. 나가는 연결의 마지막에있는 뉴런은 들어오는 모든 연결을 요약하고 그 결과를 모든 나가는 연결을 통해 다음 계층으로 전달합니다.
그림은 아이디어를 훨씬 더 직관적으로 만듭니다. 그림 1은 작은 예를 보여줍니다. 왼쪽의 2와 3은 네트워크에 입력됩니다. 이 입력에는 다음 계층에 대한 연결의 가중치가 곱 해집니다. 2는 우리에게 1을주고 0.5는 곱하고 2는 우리에게 6을줍니다. 두 번째 레이어에는 이전 레이어의 결과를 요약 한 노드가 하나 포함되어 있습니다. 다음 단계는 7을 가중치로 곱하는 것입니다. 나가는 연결을 찾아 다음 레이어로 전달합니다.
그림 1 : 결과를 전달하는 신경망의 예.
위의 간단한 예를 반복하여 더 큰 네트워크를 형성하기 위해 함께 연결할 수 있습니다. 아래의 그림 2에는 대규모 네트워크의 예가 나와 있습니다. 예제 네트워크에는 숨겨진 레이어에 연결된 3 개의 입력이 있습니다. 그러면 숨겨진 레이어가 단일 출력에 연결됩니다. 숨겨진 레이어는 교육을 용이하게하기위한 것입니다. 문제가 복잡할수록 더 많은 레이어와 노드가 필요합니다.
그림 2 : 더 큰 신경망의 예.
네트워크는 많은 연결의 가중치를 업데이트하여 학습합니다. 신경 네트워크에서 학습을 수행하는 데 사용되는 많은 소프트웨어 알고리즘이 있습니다. 그들은 감독 학습과 감독되지 않은 학습이라는 두 가지 범주로 나뉩니다. 감독 학습은 사용자가 예측이 올바른지 아닌지 네트워크에 알리는 것으로 수행됩니다. 네트워크는 오류를 계산하고 알고리즘 중 하나를 사용하여 오류를 수정합니다. 이에 대한 예는 네트워크의 예측 오류를 계산하는 역 전파입니다. 그런 다음 네트워크는 빠른 알고리즘을 사용하여 각 연결 가중치를 해당 오류로 업데이트합니다. 역 전파는보다 일반적인 훈련 전략 중 하나입니다.
감독되지 않은 학습은 네트워크가 자체적으로 점수를 매기고 이후의 모든 시도에서 향상 시키려고 시도하는 몇 가지 유형의 적합성 또는 점수 알고리즘을 사용합니다. 감독되지 않은 훈련의 예로 유전 알고리즘이 있습니다. 이 알고리즘은 신경 네트워크의 인구를 생성하고 인구에 순위를 매기도록 사용자가 설계 한 채점 알고리즘을 사용합니다. 그 후, 그것은 적자 생존입니다. 최상위 순위의 네트워크는 머무르고 "재현"되고 최하위 순위는 버려집니다. 네트워크는 연결 가중치를 혼합하고 일치시켜 재생합니다.
신경망은 비교적 작은 도구 모음 도구 모음 사이에서 수십억 가지 조합을 탐색함으로써 알고리즘 설계에서 시스템 거래자를 실질적으로 지원할 수 있습니다. 이것은 표준 조합과는 다르다. 조합은 가장 많은 돈을 돌려주는 조합을 찾는 다양한 지표에 숫자를 연결하는 것과 관련이있다.
네트워크가 최상의 거래 시스템을 결정하기 위해 여러 가지 조치 (균형, Sharpe Ratio 등)를 고려할 수 있다는 사실은 하나의 특정 조치를 지나치게 강조 할 가능성을 줄여줍니다. 좋은 예가 계좌 잔고입니다. 시스템이 순 수익과 위험 조정 수익 사이의 포용력을 얻는다면, 번호 계산에서 벗어나 실제 학습 및 패턴 인식을 향한 최고의 수를 발견하기 시작합니다.
신경망은 얼굴 인식에서부터 통화 시장 예측에 이르기까지 다양한 응용 분야에서 매우 유용하다는 사실을 입증하고 있습니다. 그들은 우리가 인식하기 어려운 패턴이있는 곳에서 탁월합니다. 이러한 능력은 네트워크가 여러 변수와 관련된 어려운 문제를 해결하는 데 매우 중요합니다.

신경망 외환 전략
Forex를위한 하이브리드 신경망 정지 및 역전 전략.
Michael R. Bryant.
뉴럴 네트워크는 수년간 거래 시스템에서 다양한 수준의 성공으로 사용되어 왔습니다. 그들의 주요 매력은 비선형 구조가 표준 지표 기반 거래 규칙보다 가격 이동의 복잡성을 더 잘 포착 할 수 있다는 것입니다. 비판 중 하나는 신경망 기반 거래 전략이 지나치게 적합하기 때문에 새로운 데이터에서 잘 수행되지 않는다는 것입니다. 이 문제에 대한 가능한 해결책은 신경망과 규칙 기반 전략 논리를 결합하여 하이브리드 유형의 전략을 만드는 것입니다. 이 기사에서는 Adaptrade Builder를 사용하여이 작업을 수행하는 방법을 보여줍니다.
특히이 기사에서는 다음을 설명합니다.
거래 항목에 대한 신경망과 규칙 기반 논리를 결합합니다.
동시에 여러 플랫폼 타겟팅 (MetaTrader 4 및 TradeStation)
비대칭 정지 - 및 - 역 논리를 사용하여 전략 개발.
intraday forex 데이터 사용.
마지막 전략을 검증하는 데 사용되는 세 번째 세그먼트 데이터 접근 방식이 사용됩니다. MetaTrader 4 및 TradeStation에 대한 결과 전략 코드가 표시되며 각 플랫폼에 대해 검증 결과가 긍정적임을 입증합니다.
무역 진입 필터로서의 신경망.
수학적으로 신경망은 하나 이상의 출력 값을 생성하는 하나 이상의 가중 입력의 비선형 조합입니다. 거래의 경우, 신경망은 일반적으로 (1) 미래 가격 움직임의 예측 또는 (2) 거래를위한 지표 또는 필터의 두 가지 방법 중 하나로 사용됩니다. 여기에서 지표 또는 거래 필터로 사용하는 것이 고려됩니다.
지표로서, 신경망은 거래가 시작되기 전에 만족 되어야만하는 추가 조건 또는 필터 역할을합니다. 네트워크에 대한 입력은 전형적으로 모멘텀, 스토캐스틱, ADX, 이동 평균 등과 같은 다른 기술 지표와 이전 가격의 가격 및 조합입니다. 입력은 크기가 조정되고 신경망은 출력이 -1과 +1 사이의 값이되도록 설계되었습니다. 한 가지 방법은 출력이 0.5와 같은 임계 값보다 크거나 같으면 긴 입력을 허용하고 출력이 임계 값의 음보다 작거나 같은 경우 짧은 입력을 허용하는 것입니다. 예 : -0.5. 이 조건은 기존 입력 조건에 추가됩니다. 예를 들어, 긴 입력 조건이있는 경우, 참이어야하고 신경망 출력은 긴 입력에 대한 임계 값과 적어도 같아야합니다.
뉴럴 네트워크를 설정할 때, 통상적으로 상인은 입력 및 네트워크 토폴로지를 선택하고 "트레이닝 (training)"을 담당 할 것이다. 최적의 가중치를 결정하는 네트워크 아래에 나와있는 것처럼 Adaptrade Builder는 소프트웨어가 기반으로하는 진화 적 빌드 프로세스의 일부로 이러한 단계를 자동으로 수행합니다. 신경망을 거래 필터로 사용하면 다른 규칙과 쉽게 결합하여 기존의 규칙 기반 방식의 최상의 기능과 신경망의 장점을 결합한 하이브리드 거래 전략을 만들 수 있습니다. 간단한 예를 들어, 빌더는 이동 평균 크로스 오버 규칙을 신경망과 결합하여 빠른 이동 평균이 느린 이동 평균을 초과하고 신경망 출력이 임계 값 이상인 경우 긴 위치가 취해질 수 있습니다.
Stop-and-Reverse 거래 전략.
stop-and-reverse 거래 전략은 항상 길거나 짧은 시장에 존재하는 전략입니다. 엄밀히 말하면, "정지 및 역전" 정지 주문에 도달했을 때 거래를 취소한다는 의미입니다. 그러나, 나는 그것을 장단점에서 장단기로 전환하는 모든 거래 전략에 대한 단문으로 사용하므로 항상 시장에 나와 있습니다. 이 정의에 따라 주문이 중지 명령 일 필요는 없습니다. 시장을 이용하여 진입하거나 역으로 전환하거나 주문을 제한 할 수 있습니다. 또한 각면에서 동일한 논리 또는 동일한 주문 유형을 사용할 필요는 없습니다. 예를 들어, 중지 주문에 long (그리고 exit short)을 입력하고 각 entry / exit에 대해 다른 규칙과 조건을 사용하여 시장 주문에 short (그리고 long exit)를 입력 할 수 있습니다. 이것은 비대칭 정지 - 및 역방향 전략의 한 예입니다.
stop-and-reverse 전략의 가장 큰 장점은 항상 시장에 나와 있으면 큰 움직임을 놓치지 않는 것입니다. 또 다른 장점은 단순성입니다. 거래를 시작하고 종료하기위한 별도의 규칙과 조건이있는 경우 더 복잡하고 더 많은 것이 잘못 될 수 있습니다. 항목과 종료를 결합하면 타이밍 결정이 줄어들며 실수가 줄어들 수 있습니다.
반면에, 거래를 종료하기위한 최적의 조건은 반대 방향으로 진입하는 조건과 거의 동일하다고 주장 할 수있다. 진입 및 퇴출 거래는 본질적으로 분리 된 결정이므로 별도의 규칙과 논리를 사용해야합니다. 항상 시장에 존재한다는 또 다른 잠재적 인 단점은 전략이 모든 오프닝 갭을 통해 거래 될 것이라는 점입니다. 포지션과의 커다란 격차는 전략이 반전되기 전에 막대한 손실을 의미 할 수 있습니다. 보다 선택적으로 출입하는 전략이나 하루가 끝날 때 퇴장하는 전략은 공백을 메우는 영향을 최소화 할 수 있습니다.
목표는 외환 전략을 수립하는 것이므로 MetaTrader 4 (MT4)는 MetaTrader 4가 주로 외환을 위해 설계되었으며 해당 시장을 거래하는 데 널리 사용된다는 점에서 거래 플랫폼에 대한 확실한 선택입니다 (예 : MetaTrader vs. TradeStation : 언어 비교). 그러나 최근 몇 년간 TradeStation은 외환 시장을보다 공격적으로 타깃으로 삼았습니다. 귀하의 거래량 및 / 또는 계정 수준에 따라 플랫폼 수수료를받지 않고 커미션을 지불하지 않고도 TradeStation을 통해 외환 시장을 거래 할 수 있습니다. 스프레드는 주요 외환 쌍에 좋은 유동성으로 타이트하게 보도되고있다. 이러한 이유로 두 플랫폼 모두이 프로젝트의 대상이었습니다.
여러 플랫폼을 동시에 타겟팅 할 때 몇 가지 문제가 발생합니다. 첫째, 시간대, 일부 막대의 가격 견적, 수량 및 사용 가능한 날짜 범위가 서로 다른 플랫폼에 따라 데이터가 다를 수 있습니다. 이러한 차이를 완화하기 위해 두 플랫폼에서 모두 데이터를 얻었으며이 전략은 두 데이터 시리즈에 동시에 적용되었습니다. 따라서 최상의 전략은 데이터의 차이에도 불구하고 두 데이터 시리즈 모두에서 잘 작동하는 전략이었습니다.
그림 1의 Market Data 테이블에서 추측 할 수있는 바와 같이 유로 / 달러 외환 시장은 4 시간 (240 분)의 막대 크기를 가진 EURUSD를 목표로했습니다. 다른 바 크기 나 시장도 마찬가지였습니다. 필자는 MT4 플랫폼을 통해 그림 1 (데이터 시리즈 # 2)에 표시된 날짜 범위로 표시된만큼의 데이터를 얻을 수 있었기 때문에 동일한 날짜 범위가 TradeStation에서 동일한 데이터 시리즈를 얻는 데 사용되었습니다 (데이터 시리즈 # 1). 데이터의 80 %는 검증을 위해 따로 보관되는 20 % (6/20/14에서 2/10/15)와 함께 Building (샘플 내 및 "out-of-sample"결합)에 사용되었습니다. 이어서, 원래의 80 %의 80 %가 "샘플 내"로 설정되었다. 20 %가 "샘플 밖"으로 설정된 경우, 매도 / 매도 스프레드는 5 pips로 설정되었고, 라운드 컷 당 6 pips 또는 풀 사이즈 로트 (100,000 주) 당 60 달러의 거래 비용이 가정되었다. 두 데이터 시리즈는 Market Data 테이블의 왼쪽 열에있는 확인 표시에 표시된대로 빌드에 포함되었습니다.
그림 1. MetaTrader 4 및 TradeStation의 외환 전략을 수립하기위한 마켓 데이터 설정.
여러 플랫폼을 대상으로 할 때 또 다른 잠재적 인 문제점은 지원되는 각 플랫폼이 해당 표시기를 계산하는 방식을 복제하도록 설계 되었기 때문에 선택되는 플랫폼에 따라 표시기 값이 달라질 수 있다는 것입니다. 이러한 불일치의 원인을 피하기 위해 MetaTrader 4에서 TradeStation보다 다르게 평가되는 지표는 빌드에서 제거되어야합니다. 이는 다음과 같은 지표를 피해야한다는 것을 의미합니다.
천천히 D 확률 적.
빠른 확률론.
두 플랫폼 모두에서 사용할 수있는 다른 모든 표시기는 두 플랫폼에서 같은 방식으로 계산됩니다. TradeStation에는 Builder에서 사용할 수있는 모든 표시기가 포함되어 있지만 MetaTrader 4에서는 사용할 수 없습니다. 따라서 두 플랫폼 모두에서 사용할 수있는 지표 만 포함하려면 Builder에서 코드 유형으로 MetaTrader 4 플랫폼을 선택해야합니다. 그러면 빌드 세트에서 MT4에 사용할 수없는 지표가 자동으로 제거되므로 두 플랫폼 모두에서 사용할 수있는 지표가 남습니다. 또한 각 플랫폼에서 얻은 볼륨 데이터의 차이점을 발견 했으므로 빌드 세트에서 모든 볼륨 종속적 인디케이터를 제거했습니다. 마지막으로 데이터 파일 간의 시간대가 다르기 때문에 시간 표시기가 제거되었습니다.
아래의도 2에서, 빌드 세트에서 사용되는 인디케이터리스트는 빌드 프로세스 ( "고려"컬럼)에 의해 인디케이터가 고려되었는지 여부에 따라 정렬되어 도시된다. 위에서 논의 된 이유로 지표가 제거되면 목록 상단에 표시됩니다. "Simple Mov Ave"로 시작하는 나머지 표시기는 모두 빌드 세트의 일부였습니다.
그림 2. 빌드 세트에서 제거 된 지표를 보여주는 Builder의 표시기 선택.
빌드 프로세스에서 사용 된 평가 옵션은 그림 3과 같습니다. 앞서 설명한 것처럼 MetaTrader 4가 코드 출력 선택으로 선택되었습니다. Builder에서 전략을 작성한 후에는 코드 유형을 포함하여 평가 옵션 탭의 옵션을 변경하고 전략을 재평가 할 수 있으며 선택한 언어로 코드를 재 작성합니다. 이 기능은 MetaTrader 4를위한 전략을 수립 한 후 최종 전략을위한 TradeStation 코드를 얻는 데 사용되었습니다.
그림 3. EURUSD forex 전략을위한 빌더의 평가 옵션.
정지 및 후진 전략을 생성하기 위해 아래 그림 4와 같이 모든 출구 유형이 빌드 세트에서 제거되었습니다. 세 가지 유형의 진입 명령 (시장, 정지 및 제한)은 모두 "고려하십시오"로 남았습니다. 이는 빌드 프로세스가 빌드 프로세스 중에 고려할 수 있음을 의미합니다.
그림 4. Builder에서 선택한 주문 유형을 사용하여 중지 및 후진 전략을 작성하십시오.
Builder 소프트웨어는 항목 및 / 또는 종료에 대한 규칙 기반 논리 조건을 자동으로 생성합니다. 전략에 신경망을 추가하기 위해, "진입 조건에서 신경망을 포함"옵션을 선택하는 것만으로 충분하다. Strategy Options (전략 옵션) 탭에서 아래 그림 5와 같이 신경망 설정이 기본값으로 유지됩니다. 정지 및 역 논리의 일부로서, Market Sides 옵션은 Long / Short로 설정되고, & quot; 새로운 거래를 시작하기 전에 종료를 기다리는 & quot; 확인되지 않았습니다. 후자는 반전시 현재 오더를 종료하도록 엔트리 오더를 활성화하는 데 필요합니다. 다른 모든 설정은 기본값으로 두었습니다.
그림 5. 규칙 기반 및 신경 네트워크 조건을 모두 사용하여 하이브리드 전략을 작성하기 위해 Builder에서 선택된 전략 옵션.
Builder에서 빌드 프로세스의 진화 적 특성은 그림 6에서와 같이 메트릭 탭에 정의 된 목표 및 조건에 따라 계산 된 적합성에 따라 결정됩니다. 빌드 목표는 간단하게 유지됩니다. 최소 이익을 극대화하면서 순이익 최대화 복잡성, 순이익에 비해 상대적으로 작은 가중치를 부여했습니다. 일반적인 전략 품질에 대한 상관 계수 및 중요성뿐만 아니라 거래의 평균 막대 및 거래 수를 포함하는 구축 조건에 중점을 두었습니다.
처음에는 거래의 평균 막대 만 구축 조건으로 포함되었습니다. 그러나 일부 초기 빌드에서는 당기 순이익이 거래 기간보다 선호되어 거래 수 메트릭이 추가되었습니다. 거래 횟수 (209 ~ 418)의 지정된 범위는 빌드 기간의 막대 수에 따라 15 ~ 30 바 사이의 평균 거래 길이와 같습니다. 결과적으로, 이 측정 기준을 추가하는 것은 무역 길이 목표에 더 많은 중점을 두었고, 결과적으로 원하는 무역 범위의 범위를 가진 인구가 더 많아졌습니다.
그림 6. 메트릭 탭에서 설정 한 빌드 목표 및 조건에 따라 적합성 계산 방법이 결정됩니다.
& quot; 인기 전략 선택 조건 & quot; 빌드 조건의 경우와 같이 빌드 기간 동안이 아니라 전체 데이터 범위 (별도의 유효성 검사 세그먼트 제외)에서 최상위 전략 조건을 평가한다는 점을 제외하고는 빌드 조건을 복제하십시오. 최상위 전략 조건은 프로그램이 별도의 모집단에서 모든 조건을 충족시키는 전략을 따로 설정하는 데 사용됩니다.
최종 설정은 아래 그림 7과 같이 [빌드 옵션] 탭에서 수행됩니다. 여기에서 가장 중요한 옵션은 모집단 크기, 세대 수 및 "샘플 외"를 기반으로 재설정 할 수있는 옵션입니다. 공연. 인구 규모는 인구의 다양성을 충분히 확보 할 수있을 정도로 커지도록 선택되었으며 합리적인 시간 내에 구축하기에 충분히 작습니다. 세대 수는 결과가 수렴하기 시작하기 위해 몇 가지 예비 빌드를 수행하는 데 걸린 시간을 기준으로합니다.
그림 7. 빌드 옵션에는 모집단 크기, 세대 수, & quot; 샘플 외 & quot;를 기반으로 모집단을 재설정하는 옵션이 포함됩니다. 공연.
& quot; OOS (Out-of-Sample) 성능에서 초기화 & quot; 옵션은 지정된 조건이 충족되면 지정된 세대 수 이후에 빌드 프로세스를 시작합니다. 이 경우에, 모집단은 "샘플 밖"(out-of-sample) 순이익은 20,000 달러 미만입니다. 이 값은 사전 테스트를 기준으로 선택 되었기 때문에 충분히 도달 할 수 없을만큼 높은 값입니다. 결과적으로 빌드 프로세스는 수동 중지 될 때까지 30 세대마다 반복되었습니다. 이것은 프로그램이 오랜 기간 동안 최고 전략 조건에 기반한 전략을 식별하게하는 방법입니다. 정기적으로 상위 전략 인구를 확인하고 적절한 전략을 찾으면 구축 프로세스를 취소 할 수 있습니다.
나는 "out-of-sample"을 넣는다. 따옴표 안에. "아웃 오브 샘플" 기간이 이러한 방식으로 모집단을 재설정하는데 사용되는 경우, "샘플 밖" 기간은 더 이상 진정한 표본이 아닙니다. 이 기간은 현재 빌드 프로세스를 안내하는 데 사용되고 있으므로 샘플 기간의 일부분이됩니다. 위에서 설명한 것처럼 유효성 검사를 위해 세 번째 세그먼트를 따로 설정하는 것이 좋습니다.
몇 시간의 처리 및 자동 재 구축 횟수를 거친 후 Top Strategies 인구에 적합한 전략이 발견되었습니다. 폐쇄 형 무역 주식 곡선은 아래 그림 8에 나와 있습니다. 이 주식형 곡선은 두 거래에서 일정한 실적을 보였으며 두 거래에서 동일한 결과를 나타 냈습니다.
그림 8. EURUSD stop-and-reverse 전략에 대한 비공개 주식 거래 곡선.
유효성 검사 기간 동안 전략을 확인하기 위해 시장 탭 (그림 1 참조)의 날짜 컨트롤이 데이터 종료 날짜 (2015 년 2 월 11 일)로 변경되고 전략은 평가를 선택하여 재평가되었습니다 명령을 사용하십시오. 결과는 아래 그림 9와 같습니다. 빨간색 상자의 유효성 검사 결과는 전략이 빌드 프로세스 중에 사용되지 않은 데이터를 유지하고 있음을 보여줍니다.
그림 9. 유효 기간을 포함하여 EURUSD stop-and-reverse 전략에 대한 비공개 주식 거래 곡선.
최종 점검은 해당 플랫폼에 대한 코드 출력 옵션을 사용하여 각 데이터 시리즈에서 전략을 수행하는 방법을 개별적으로 확인하는 것입니다. 위에서 설명한 것처럼 (1) 코드 유형 및 (2) 데이터 계열에 따라 결과에 차이가있을 수 있기 때문에 이는 필요합니다. 선택한 설정이 이러한 차이를 최소화했는지 확인해야합니다. MetaTrader 4의 전략을 테스트하기 위해 Markets 탭에서 TradeStation의 데이터 시리즈를 선택 해제하고 전략을 재평가했습니다. 그 결과를도 10에 아래에 나타내 었으며, 이는도 9의 하부 곡선과 동일하다.
그림 10. MetaTrader 4의 유효 기간을 포함하여 EURUSD 중지 및 역전 전략에 대한 비공개 주식 거래 곡선.
마지막으로 TradeStation의 전략을 테스트하기 위해 TradeStation의 데이터 시리즈를 선택하고 MetaTrader 4의 시리즈를 Markets 탭에서 선택 취소하고 코드 출력을 "TradeStation"으로 변경했습니다. 그 전략은 재평가되었다. 그 결과는도 11에 아래에 도시되어 있고 예상대로도 9의 중간 곡선과 매우 유사하게 나타난다.
그림 11. TradeStation의 유효 기간을 포함하여 EURUSD 중지 및 역전 전략에 대한 비공개 주식 거래 곡선.
두 플랫폼의 코드는 아래 그림 12에 나와 있습니다. 이미지를 클릭하면 해당 플랫폼의 코드 파일이 열립니다. 코드를 검토하면 전략의 규칙 기반 부분이 장기 및 단기에 대해 다양한 변동성 관련 조건을 사용한다는 것을 알 수 있습니다. 신경망 입력은 요일, 추세 (ZLTrend), 일중 최고, 오실레이터 (InvFisherCycle, InvFisherRSI), 볼린저 밴드 및 표준 편차를 비롯한 다양한 지표로 구성됩니다.
이 전략의 하이브리드 성은 TradeStation 코드의 코드 구문에서 직접 볼 수 있습니다.
EntCondL 및 NNOutput & gt; = 0.5 인 경우, 시작한다.
구매 ( "EnMark-L") NShares는 시장에서 다음주를 공유합니다.
변수 "EntCondL" 는 룰 - 기반 엔트리 조건을 나타내고, "NNOut"는 룰 - 기반 엔트리 조건을 나타낸다. 신경망의 출력입니다. 긴 입력 순서를 지정하려면 두 조건이 모두 true 여야합니다. 짧은 입력 조건은 동일한 방식으로 작동합니다.
그림 12. EURUSD stop-and-reverse 전략을위한 거래 전략 코드 (왼쪽, MetaTrader 4, 오른쪽, TradeStation). 그림을 클릭하면 해당 코드 파일이 열립니다.
이 기사에서는 Adaptrade Builder로 stop-and-reverse (항상 시장에 나와있는) 접근법을 사용하여 EURUSD를위한 하이브리드 규칙 기반 / 신경망 전략을 구축하는 과정을 살펴 보았습니다. 각 플랫폼에서 동일한 방식으로 작동하는 지표의 공통 하위 집합을 선택하여 여러 플랫폼에서 전략 코드를 생성하는 방법을 보여주었습니다. 장단기에서 후퇴로 역전되는 전략을 생성하는 데 필요한 설정이 기술되었으며 결과적인 전략이 별도의 유효성 검증 세그먼트에서 긍정적으로 수행 되었음이 입증되었습니다. 또한이 전략이 각 플랫폼에 대해 데이터 및 코드 옵션을 사용하여 비슷한 결과를 생성했음을 확인했습니다.
위에서 언급했듯이 정지 및 역 접근에는 몇 가지 단점이 있으며 모든 사람에게 호소력이 없을 수 있습니다. 그러나 외환 시장은 24 시간 내내 거래되기 때문에 항상 시장 접근 방식이 외환 데이터에 더 매력적일 수 있습니다. 결과적으로 세션 오프닝 갭이 없으며 거래 주문은 항상 활성화되어 시장 변화에 따라 거래를 되돌릴 수 있습니다. 하루 동안의 데이터 (4 시간 막대)를 사용하면 빌드 프로세스에서 더 많은 데이터 막대가 제공되었지만 전략의 항상 시장 특성으로 인해 거래가 밤새도록 수행된다는 점에서 상당히 임의적이었습니다.
빌드 프로세스는 길고 짧은 진입을위한 다양한 조건을 전개 할 수 있었기 때문에 비대칭 스톱 앤드 리버스 전략이 가능했습니다. 이름에도 불구하고 시장, 정지 및 제한 주문은 모두 각 측면에 대해 독립적으로 구축 프로세스에 의해 고려되었지만 결과적인 전략은 시장 주문에 대한 장기 및 단기 거래를 시작합니다. 실제로 장기간에서 단기로 반전하는 것은 전략이 현재 길기 때문에 시장에서 주식의 수를 두 배로 줄이는 것을 의미합니다. 예를 들어, 현재의 긴 포지션이 100,000 주라면, 시장에서 200,000 주를 판매 할 수 있습니다. 마찬가지로, 현재 짧은 포지션이 100,000 주라면, 시장에서 20 만 주를 사면서 단기에서 장기로 반전 할 수 있습니다.
이상적인 것보다 더 짧은 가격 내역이 사용되었습니다. 그럼에도 불구하고 그 결과는 밸리데이션 부문에서 긍정적이었고 과도한 전략이 아니었다. 이는 전략을 시장에 과도하게 적용하지 않고도 신경망을 거래 전략에 사용할 수 있다는 생각을 뒷받침합니다.
여기 제시된 전략은 실제 거래를위한 것이 아니며 실시간 추적 또는 거래에서 테스트되지 않았습니다. 그러나이 기사는 EURUSD 또는 기타 시장에 대한 유사한 전략을 개발하기위한 템플릿으로 사용할 수 있습니다. 항상 그렇듯이 개발하는 모든 거래 전략은 실시간 추적 또는 개별 데이터로 철저히 테스트하여 결과를 확인하고 실시간 거래에 앞서 전략의 거래 특성을 익히도록해야합니다.
이 기사는 Adaptrade Software 뉴스 레터의 2015 년 2 월호에 실렸습니다.
HYPOTHETICAL 또는 SIMULATED PERFORMANCE 결과는 특정 제한이 있습니다. 실제 성과 기록과 달리, 시뮬레이션 된 결과는 실제 거래를 나타내지 않습니다. 또한 거래가 실제로 실행되지 않았기 때문에 결과가 유동성 부족과 같은 특정 시장 요인에 영향을 미치거나 과다 또는 과소 보상을받을 수 있습니다. 시뮬레이션 된 거래 프로그램은 일반적으로 통보의 이익을 고려하여 설계되었다는 사실을 인정합니다. 어떠한 계정도 이익이나 손실을 달성 할 가능성이있는 것으로 나타나지 않습니다.
Adaptrade Software의 새로운 개발, 뉴스 및 특별 제안에 대한 정보를 얻으려면 당사 목록에 가입하십시오. 고맙습니다.
저작권 © 2004-2015 Adaptrade Software. 판권 소유.

신경망 Forex 무역 전략 배우기.
외환 세계의 최신 버즈는 인공 지능 공동체에서 가져온 용어 인 신경망입니다. 전문 용어로, 신경망은 가중치 확률로 연결된 많은 수의 처리 단위로 구성된 데이터 분석 방법입니다. 보다 간단한 용어로, 신경망은 인간의 두뇌가 작동하고 학습하는 방식과 유사합니다. 수십 년 동안 인공 지능 커뮤니티의 사람들은 신경망 모델을 사용하여 생각하고있는 컴퓨터를 만들었습니다. & learn & # 39; 그들의 행동 결과에 따라
기존의 데이터 구조와는 달리, 신경망은 여러 데이터 스트림을 받아 한 결과를 출력합니다. 데이터를 수량화 할 수있는 방법이 있다면 예측을 위해 고려해야 할 요소에 데이터를 추가하는 방법이 있습니다. 네트워크는 데이터를 해석하고 결론을 도출 할 수 있기 때문에 Forex 시장 예측 소프트웨어에서 자주 사용됩니다.
그들이 Forex 예측을 만드는데 사용되기 전에, 신경 네트워크는 훈련되어야합니다. & # 39; 입력과 출력 사이에서 발생하는 패턴을 인식하고 조정합니다. 훈련과 테스트는 시간이 오래 걸릴 수 있지만, 과거 데이터를 기반으로 향후 결과를 예측할 수있는 신경 네트워크를 제공합니다. 기본 개념은 입력 및 출력 데이터 쌍의 예가 제시 될 때 네트워크가 & nbsp; 종속성을 확인하고 새 데이터가 제시 될 때 이러한 종속성을 적용합니다. 거기에서 네트워크는 자신의 출력을 비교하여 예측을 정정 할 수있는 정도를 확인하고 정답에 도달 할 때까지 다양한 종속성의 무게를 조정할 수 있습니다.
이를 위해서는 네트워크가 두 개의 별도 데이터 세트로 교육 받아야합니다. 훈련 및 시험 세트. 신경 네트워크의 강점 중 하나는 지속적으로 자신에게 공급되는 데이터와 자체 예측을 비교함으로써 학습을 계속할 수 있다는 것입니다. 신경망은 기술적 인 데이터와 기본 데이터를 결합하여 두 시나리오 모두에서 최고의 성능을 발휘합니다. 그들의 힘은 그들이 생각하지 못했을 패턴을 찾고 예상치 못한 패턴을 예측에 적용하여 매우 정확한 결과를 도출합니다.
불행히도, 이 힘은 또한 거래 예측을위한 신경 네트워크의 사용에 약점이 될 수 있습니다. 궁극적으로 출력은 입력만큼 양호합니다. 엄청난 양의 데이터를 제공하더라도 데이터 상관 관계가 매우 좋습니다. 이들은 매우 다른 유형의 정보에서 패턴을 추출하는 데 아주 능합니다. 패턴이나 관계가없는 경우에도 마찬가지입니다. 그것의 다른 주요한 힘 & mdash; 감정없이 지능을 적용 할 수있는 능력; 결국 컴퓨터는 자아를 가지지 않는다. 또한 휘발성 시장을 다룰 때 약점이 될 수 있습니다. 알려지지 않은 요소가 도입되면, 인공 신경망은 그 요인에 정서적 인 가중치를 부여 할 방법이 없습니다.
시장에는 현재 수십 개의 Forex 거래 플랫폼이 있으며 신경 네트워크 이론 및 기술을 통합하여 교육하고 있습니다. 네트워크를 통해 귀하의 시스템을 예측하고이를 기반으로 구매 / 판매 주문을 생성하십시오. 중요한 것은 명심해야 할 것은 Forex 거래의 가장 기본적인 규칙은 신경 네트워크를 구축하기 시작할 때 적용된다는 것입니다. 자신을 교육하고 자신이하는 일을 알고 있어야합니다. 기술적 분석, 기본, 신경망 또는 자신의 감정을 다루 든 상관없이 Forex 거래에서 성공을 보장하기 위해 할 수있는 가장 중요한 일은 가능한 모든 것을 배우는 것입니다.

신경망 외환 전략
인공 신경망 (ANN)과 같은 현대 기술은 여러 가지 이유로 고주파수 거래에 가장 적합합니다. 첫째, 그들은 인간 지능을 모방하지만 그들은 인간의 지능 수준에 거의 도달하지 못하기 때문에 인간이 쉽게 일할 수있는 시간 척도로 그러한 기술을 사용하는 것은 중요하지 않습니다. 그들의 장점은 작동 속도와 지속적인 활동에서 비롯됩니다.
둘째, 신경망을 효율적으로 학습하기 위해 많은 양의 데이터가 필요하며, 이 양의 데이터는 고주파수 거래에서만 발견됩니다. Forex는 모두 일일 또는 주간 시간 규모에 관한 관련성이 낮은 과거 데이터가있는 도구가 거의 없습니다.
또한, 고주파 거래는 계측기의 진정한 가치를 둘러싼 소음을 파악하는 스캘핑 전략의 한 유형입니다. 이것은 근본적인 분석에 따라 도구의 의미있는 움직임을 따르려고 시도하는 장기 거래와는 다릅니다.
인공 신경망.
작업 할 좋은 시간 규모는 분 단위의 시간 규모입니다. 이 시간 규모는 지역 고지에서 판매하고 지역 최저 가격으로 구매하기 위해 알고리즘에 의해 포착되는 잡음으로 가득 차 있습니다.
이것은 다음 10 분 최고를 예측하기 위해 훈련 된 간단한 신경 네트워크를 사용하여 증명할 수 있습니다. 신경 네트워크가 어떻게 작동하는지 정확하게 알고 싶다면 3 월 한 달 동안 내 기사를 읽는 것이 좋습니다. 신경망과의 거래 2 부.
위의 그래프에서 주석 (high 0 ~ -10)은 & ldquo; present & rdquo;로 간주되는 분 0과 관련하여 분 (0)과 분 (-10) 사이의 간격에서 가장 높음을 의미합니다. 이 훈련은 올해의 훈련과 데이터를위한 2012 년의 데이터와 함께 유전 알고리즘을 사용하여 수행됩니다.
무슨 일이 일어나고있는 것은 중복되는 & ldquo; high to high & rdquo; 미래의 높은 움직임에서 높은 움직임을 예측하기위한 움직임. 이는 우리가 과거의 최고치가 이미지나 갔는지 여부를 결코 알지 못하기 때문에 실제적으로 사용될 수 없습니다. 가까운 네트워크와 가까운 네트워크는 작동하지 않습니다. 그 이유는 높음 (및 낮음)이 닫기보다 훨씬 많은 정보를 보유하기 때문입니다. 닫기는 시간의 전체 기간을 나타내며, 닫기는 단일 한 순간을 나타냅니다.
미래에 대해 진실로 예측되고있는 것을 보여주는 짧은 시간 규모에서 이전부터 다음으로 높은 움직임을 예측하는 것만 가능합니다. 거기에서 & ldquo; close & rdquo;를 예측하는 것은 사소한 일이었습니다. 운동은 적어도 나 혼자만의 경우는 아니었다. 작업에서의 메커니즘을 이해하는 데는 며칠이 걸렸지 만, 결과는 실제로 내 기대를 능가했습니다.
우선, 최고 또는 최저를 사용하지 않을 것이지만 오히려 최고 및 최저 (AHL) 사이의 평균을 사용하려고합니다.
나는 처음부터 다음 AHL에 가까운 운동을 예측하려고 시도했지만 이것은 효과가 없었습니다. 이것은 정말로 이상하고 비논리적 인 것처럼 보였다. AHL (-10 to 0)에서 AHL (0 to 10)까지 예측할 수 있었기 때문에 AHL (-10 to 0) 이동에 가까운 쪽 (0)을 순서대로 추가 할 수있는 것처럼 보였습니다. 다음 AHL 운동에 가까운 것을 예측하지만 이것은 효과가 없습니다.
내 머리를 긁고 복잡한 반복적 인 신경망, 의사 결정 트리 및 가장 가까운 이웃 알고리즘과 같은 몇 가지 다른 전술을 시도했지만 아무 것도 효과가 없었습니다.
사실은 AHL을 AHL 운동으로 정확하게 예측할 수 없다는 것입니다. 예측과 실제 움직임 간의 상관 관계는 약 0.4에 불과합니다. 그래도 AHL (-10 to 0)과 AHL (0 ~ 10) 운동의 양성 AHL (0 ~ 10)이 AHL (-10 ~ 0)보다 낮다고 예측하면 올바른 기회가 있어야합니다 AHL 운동에 가까운 예측. 따라서 네트워크가 AHL에서 AHL 로의 부정적인 움직임을 예측할 때 AHL (-10 ~ 0)보다 근접한 경우 (0)를 선택하고 반대로 AHL보다 가까운 값 (0) 인 경우를 선택했습니다. (-10에서 0), AHL에서 AHL 로의 이동이 양성으로 예측되었다. 마지막으로, 획기적인 결과로, 이제는 AHL에 가까운 것으로 예상 할 수 있으며 경우의 절반에 가까운 동작까지도 예측할 수 있습니다. 예측과 가까운 움직임에 가까운 실제와의 상관 관계는 예상대로 증가했지만 기대했던 것보다 훨씬 많았습니다. AHL에서 AHL 로의 움직임이 증가 할 것으로 예상되지만 가까운 (0)이 AHL (-10에서 0)보다 높을 때, AHL에 가깝게 또는 가까운 운동에 가까운 반대 예측이 이루어져야합니다.
분 시간 규모.
위의 이미지는 분 단위의 시장 이동에 대한 이상적인 전망을 보여줍니다. 가격은 진동의 반주기가 약 10 분의 실제 값 주변에서 진동합니다.
현실적으로 악기의 진정한 가치도 바뀌지 만 그다지 중요하지 않습니다. 스컬 핑에 대해 이야기 할 때 실제로 중요한 것은 우발적 인시기입니다. 일단 가격이 충분히 많이 올라가고 고원하기 시작하면, 구매할 때와 반대로 팔 때가 있습니다.
이것은 이전에 발생한 문제에 대한 가장 좋은 설명입니다. AHL에서 AHL 로의 이동 (평균 높음 낮음)은 예측 가능하지만, 닫기 이미지는 아래 이미지와 같이 시간 0에서의 닫기가 마지막 AHL과 비교하여 어디에 있는지 알게 된 후에 만 ​​추론 할 수 있습니다. 이 정보가 신경망에 사용 가능했지만 인공 신경망을 해결하는 것은 매우 어려운 문제인 것 같습니다. 마지막 문제를 풀기 위해 하위 문제를 푸는 것. 이것은 유인원과 특정 새와 같은 매우 지적인 동물의 특성이기도합니다.
물론, 사물은 너무 깨끗하고 단순하지 않습니다. 진동의주기는 그리 안정적이지 않으며 진동의 진폭은 시간대에 따라 변하고 차트는 분명히 위에 묘사 된 것처럼 부드럽 지 않습니다. 상한과 하한은 그 점에서 지표로 사용하는 것보다 훨씬 도움이됩니다. 단일 시점이 아닌 전체 기간을 기술한다는 사실 때문에 시간이 변하지 않는 품질을 가지고 있습니다. 왜 예측할 수 없는지에 대한 이유는 무엇입니까? 가깝게 움직임을 닫습니다.
마지막으로, 이론이 완벽하지 않기 때문에 오류가 발생하고 약화가 발생합니다. 중요한 것은 이러한 전략이 커미션 및 스프레드 비용보다 더 많은 수익을 창출 할 수 있는지 여부입니다.
전파와 위임.
매도 호가 스프레드와 수수료는 장기 거래에 중요하지 않지만 고주파 거래에서는 매우 중요합니다. 평균 10 분간의 움직임을 감안할 때 수익이 발생하려면이 시간 규모에 맞춰 전략을 세우는 것이 수익 창출과 손실 마진을 동등하게 유지하면서 최소 70 %의 수익성있는 거래가 필요할 것이라고 계산했습니다. 달리 말하자면, 평균적인 거래는 수익성이있는 전략을 위해 1.5 pips 이상을 벌어야합니다. 이것은 dukascopy의 가장 큰 커미션 율과 EURUSD의 평균 bid-ask spread를 사용하여 계산됩니다. 이것은 주문이 즉시 처리되지 않기 때문에 발생하는 확산을 고려하지 않습니다. 그러나 시간 제한이있는 주문을하면 정렬 문제를 제한 할 수 있습니다.
HFT 전략은 이론적으로 거래 당 평균 4 pips의 이익을 달성하지만, 몇 가지 요인을 고려하지 않은 역 테스트를 통해 얻을 수 있습니다. 실제 결과는 더 나빠질 것이고 더 많은 문제가 발생할 것입니다. 그러나 이것은 HFT 전략을 더 발전시키기위한 견고한 토대입니다.
jforex 로봇은 아직 설정되지 않았습니다. 결과는 jforex 플랫폼을 사용하여 다운로드 한 데이터로 직접 설정 한 백 테스트 결과입니다. 나는 지금 자동화 된 전략을 쓰고있다. 이 전략이 jforex 백 테스트와 비슷한 결과를 보여 주면 아주 좋은 징조가 될 것입니다. 그러나이 전략에 대해 매우 흥분하기는하지만 성배를 아직 성지라고 부르지 마십시오.

No comments:

Post a Comment