Tuesday 6 February 2018

온라인 주식 거래 시스템 아키텍처


온라인 주식 거래 시스템 아키텍처
특집 : 온라인 트레이딩 인프라.
성공적인 거래 구조.
온라인 거래는 온라인 거래 포털 및 중개 회사에 편의성과 유연성을 제공함으로써보다 신속한 거래를 촉진합니다. NSE, BSE 및 일부 거래 포털의 핵심 인프라를 살펴보십시오. Soutiman Das 굽타.
지난 10 년간 기술 전문가와 예측 그룹이 약속 한 바와 같이 인터넷은 실제로 비즈니스를 수행하는 데있어 새로운 길을 열었습니다. 전 세계 증권 거래소는 이제 브로커 및 파트너를 통해 온라인으로 대량의 비즈니스를 수행하며 이는 전통적인 방식과 크게 다르지 않습니다. 선진국에서는 거의 모든 교환 거래가 온라인으로 이루어집니다. 그 추세는 인도와 두 곳의 가장 큰 거래소에서 천천히 나타 났으며 NSE (National Stock Exchange)와 BSE (Bombay Stock Exchange)는 언젠가 언젠가 온라인 거래를 성공적으로 수행해 왔습니다.
인도의 거래소와 중개인은 거래를 온라인으로 옮기는 데 시간이 많이 걸렸습니다. 이것은 주로 정부 규정에 기인합니다. 폐쇄 된 사용자 그룹 (CUG)을 만드는 데 필요한 사양을 정의하는 데 초기 지연이있었습니다. 이 문제는 1998 년경 DoT와 재무부간에 해결되었으며 곧 ICICIDirect, motilaloswal 및 smartjones와 같은 거래 포털이 등장했습니다.
연결성은 아마도 가장 중요한 기술적 요소였습니다. 임대 회선과 VSAT 링크의 비용은 전통적으로 매우 높았으며 링크의 신뢰성은 낮습니다. 또한 응용 프로그램을 만들고 링크가 실행되도록 몇 주 동안 기다려야하므로 링크를 커미션하는 데 오랜 시간이 걸렸습니다. 보안과 백업 및 복구 절차 비용과 같은 다른 문제도 억제 요인이었습니다.
고맙게도, 규제 문제의 해결과 함께 인도는 더 이상 긴박한 연결 및 대역폭 문제가 없습니다. 광대역 시나리오에 민간 기업이 진입하고 정부가 통신 부문을 개방함에 따라 이러한 이슈는 거의 존재하지 않는다. 시중에 나와있는 보안 솔루션과 서비스는 성숙 단계에 이르렀고 간단한 백업 솔루션을 설치하기 위해 더 이상 쓸모없는 패킷을 필요로하지 않습니다.
온라인 거래는 매일 많은 양의 데이터를 처리합니다. 예를 들어, BSE에서 2001-2002 년 (4 월 ~ 3 월)의 일일 평균 매출액은 1244.10 달러 였고 평균 일일 거래 건수는 5.17 라크였습니다.
여기에는 회사가 거래 및 재무 데이터를 최소 7 년 이상 저장해야하는 엄격한 RBI 규정이 추가되었습니다.
설계 항상, 안전하고, 중복되고, 적절한 백업 및 복구 프로세스가 필요합니다. 스토리지 이와 같이 많은 양의 중요한 데이터를 NAS 또는 SAN과 같은 네트워크 기반 스토리지에 배포하는 것은 자연스러운 일입니다. 보안 보안은 디자인 아키텍처의 핵심 요소입니다. 하드웨어 및 소프트웨어 요소는 계층화 된 보안 아키텍처를 기반으로 구축되어야하며 제대로 문서화 된 보안 정책을 유지해야합니다. 가용성 이상적으로 온라인 교환에는 '5-nine'가용성이 있어야합니다. 응용 프로그램은 각각의 작업 흐름, 거래량, 구성원 수, 사용자 수 및 위치 수와 같은 요소를 기반으로 고유 한 아키텍처를 가지고 있으므로 즉시 사용 가능한 응용 프로그램을 Exchange에 배포하기가 어렵습니다. 아키텍처 NSE는 인터넷을 통해 실시간으로 거래 정보를 보급하기 위해 NIBIS (NSE 's Internet Based Information System)를 구축했으며 운영을 돕기 위해 클라이언트 - 서버 기반 응용 프로그램을 NEAT에 배치했습니다.
BSE는 2 층 아키텍처를 갖춘 Tandem 플랫폼에 온라인 거래 시스템 (BOLT)을 구축했습니다. 하루 2 백만 건의 거래를 지원할 수 있다고 주장합니다.
크게 보려면 이미지를 클릭하십시오.
NSE와 BSE는 미국에서 가장 큰 교류 중입니다. 그들은 매우 큰 일일 거래량을 처리하고 많은 양의 데이터 트래픽을 지원하며 매우 큰 전국 네트워크를 가지고 있습니다.
두 거래소의 거래량 수치는 엄청납니다. NSE의 자본 시장 부문의 평균 일일 매출액은 약 2300 크로와 르이고 파생 상품 부문의 1300 크로우 터 주변입니다. 일일 평균 트래픽 양은 자본 시장 부문에서 하루에 약 백만 건, 파생 상품 부문에서 하루 약 50,000 건입니다. 두 세그먼트에는 약 13,000 명의 등록 사용자가 있으며 한 번에 평균 약 9500 명의 사용자가 로그인합니다.
BSE에서 2001-2002 년 (4 월 ~ 3 월) 평균 일일 매출은 R 1244.10 crore 였고 평균 일일 거래 건수는 5.17 lats였습니다.
말할 필요도없이, 모든 온라인 교환은 항상 켜져 있고, 안전하고, 중복되고, 적절한 백업 및 복구 프로세스가 있어야합니다. G. M Shenoy, NSE-IT 부사장, 온라인 교환의 디자인 철학에 대해 이야기합니다. 기본 설계 목표는 전국 모든 지역에 공정하고 평등하며 투명한 액세스를 제공하는 것이 었습니다. 중요한 측면은 가능한 한 빨리 거래 회원들에게 연결성을 제공하는 것이 었습니다. "
& quot; 텔레콤 섹터는 오늘날 상당히 자유주의입니다. 1993 년에이 기술은 성숙 해져 값 비쌌습니다. 임대 회선 비용은 오늘날과 거의 비슷합니다. 인공위성 기술은 전용 회선보다 빠른 배치가 가능하기 때문에 이익이되었습니다. NSE는 현재 3000 개 이상의 VSAT가있는 미국 최대의 VSAT 네트워크를 보유하고 있으며 곧 4000 개 이상의 VSAT로 성장할 것으로 예상됩니다. "
엄청난 거래량과 교통량을 살펴보면 시스템의 중요한 특성을 충분히 입증 할 수 있습니다. 일일 무역이 3000 crore를 횡단하는 10 분간의 가동 중지 시간에 대비하여 예상 손실을 생각해 보도록합니다. 스토리지, 보안, 백업 및 복구 프로세스, 가용성 및 다양한 애플리케이션과 같은 네트워크 요소는 신중하게 계획하고 위임해야합니다. 그렇다면 최소한 7 년 간의 거래 및 재무 데이터를 저장하는 엄격한 RBI 규정을 따라야합니다.
스토리지 이와 같이 많은 양의 중요한 데이터를 NAS 또는 SAN과 같은 네트워크 기반 스토리지에 배포하는 것은 자연스러운 일입니다. NSE는 데이터 볼륨이 '놀랍게'증가했다고 느낄 때 SAN을 구현합니다.
보안 이것은 설계 아키텍처의 핵심적이고 필수적인 부분이어야합니다. 하드웨어 및 소프트웨어 요소는 계층화 된 보안 아키텍처를 기반으로 구축되어야합니다. 그리고 잘 문서화 된 보안 정책을 가지고 개최되어야합니다.
Shenoy는 "보안은 네트워크에서 가장 중요한 요소입니다. 모든 응용 프로그램은 보안에 대한 의식적인 접근 방식으로 구축되었습니다. 보안 정책은 긴밀하게 통합되고 정기적으로 조사되어 타협의 여지가 없습니다. 모든 응용 프로그램과 OS는 안전을 위해 주기적으로 강화됩니다. "
백업 및 복구 이것은 비즈니스 지속성의 핵심 요소 중 하나로 부상했습니다. 몇 년 전 온라인 교환이 설계되었을 때, 오늘날과 마찬가지로이 부분에는 많은 강조점이 없었을 것입니다. 그러나 비즈니스 연속성 프로세스를 기존 네트워크에 추가하는 것은 어렵지 않습니다.
Shenoy는 "VSAT 네트워크의 백업으로 2000 년 중반에 육상 기반의 거래 네트워크가 구축되었습니다. 전국에 850 개 이상의 임대 회선이 연결되어 있습니다. 우리는 첸나이에 완전 중복 비즈니스 연속성 사이트를 보유한 유일한 증권 거래소입니다. "
가용성 이상적으로 온라인 교환에는 '5-nine'가용성이 있어야합니다. 거래소는 대개 자체 인프라를 사내에서 호스팅하고 외부 데이터 센터의 서비스를 사용하지 않는 것을 선호합니다.
NSE는 99.9 % 이상의 가동 시간을 달성했다고 주장합니다. 이것은 주로 내부적으로 공식화 된 절차 및 하드웨어 공급 업체와의 SLA에 대한 지속적인 검토에 기인합니다. Shenoy가 말합니다.
응용 프로그램은 각각의 작업 흐름, 거래량, 구성원 수, 사용자 수 및 위치 수와 같은 요소를 기반으로 고유 한 아키텍처를 가지고 있으므로 즉시 사용 가능한 응용 프로그램을 Exchange에 배포하기가 어렵습니다. 거래, 청산, 리스크 관리, 감시, 인덱스 계산, 리스팅, 멤버십 및 어카운트와 같은 어플리케이션은 사내 또는 외부 소프트웨어 개발자가 개발할 수 있습니다.
'빅 2'아키텍처.
NSE 및 BSE의 '빅 2'거래소는 회원, 파트너 및 고객에 대한 약속과 약속에 따라 기술 시스템을 업데이트하고 업그레이드하는 것을 믿습니다.
NSE 아키텍처 - NEAT.
NSE는 인터넷을 통한 거래 정보의 실시간 보급을 위해 NIBIS (NSE 's Internet Based Information System)를 구축했으며 운영을 돕기 위해 클라이언트 - 서버 기반 애플리케이션을 NEAT에 배치했습니다.
NEAT는 모든 거래 정보를 서버 측의 메모리 내장 데이터베이스에 저장하여 사용자의 최소 응답 시간과 최대 시스템 가용성을 달성합니다. 거래 서버 소프트웨어는 내결함성 STRATUS 메인 프레임에서 실행되며 클라이언트 소프트웨어는 Windows PC에서 실행됩니다.
원격 통신 네트워크는 X.25 프로토콜을 사용하며 자동화 된 거래 시스템의 백본입니다. 각 거래 회원은 NSE에서 거래 회원 사무실에있는 PC를 통해 다른 회원과 거래합니다.
Wholesale Debt Market 세그먼트의 거래 멤버는 전용 64Kbps 임대 회선과 VSAT 터미널을 통해 NSE의 중앙 컴퓨터에 연결됩니다. 이러한 임대 회선은 전용 2MB 광섬유 링크를 사용하여 다중화됩니다. WDM 참가자는 전화 접속 링크를 통해 거래 시스템에 연결됩니다.
이 교환기는 디지털 및 HP의 RISC 기반 Unix 서버를 백 오피스 처리에 사용합니다. Oracle 7 및 SQL / Oracle Forms 4.5 프론트 엔드와 같은 애플리케이션이 교환 기능에 사용됩니다.
BSE 아키텍처 - 볼트.
BSE는 1995 년 3 월 14 일 온라인 거래 시스템 (BOLT)을 구축했습니다. 이 시스템은 16 개의 CPU에서 실행되는 Tandem S74016 플랫폼에서 작동합니다. Tandem Himalaya S74016 시스템은 이더넷, VSAT 및 MLDN (Managed Leased Data Network)으로 네트워크화 된 8000 개 이상의 Trader 워크 스테이션의 백엔드 역할을합니다. 시스템은 하루 최대 2 백만 건의 거래를 처리한다고 주장합니다.
BOLT는 2 계층 아키텍처를 사용합니다. 트레이더 워크 스테이션은 통신 서버 및 중앙 거래 엔진 (CTE) 역할을하는 백엔드 서버에 직접 연결됩니다. 정보 보급, 색인 계산 및 위치 모니터링과 같은 기타 서비스도 시스템에 의해 제공됩니다. Tandem 아키텍처의 트랜잭션 모니터링 기능은 논스톱 SQL을 통해 데이터 무결성을 유지하는 데 도움이됩니다.
MTNL의 도움으로 BSE는 300 개의 2Mbps 회선과 1500 개의 64Kbps 회선으로 구성된 MLDN 네트워크를 구축하여 뭄바이의 모든 지역 증권 거래소와 사무소를 연결합니다. 상인 워크 스테이션을 통한 시장 관련 정보에 대한 액세스는 시장 참가자가 실시간으로 행동하고 즉각적인 결정을 내리는 데 필수적입니다. BOLT는 Bloomberg, Bridge 및 Reuters와 같은 다양한 정보 공급 업체와 연계되어 있습니다. 시장 정보는 실시간으로 뉴스 제공 기관에 공급됩니다. 이 거래소는 통합 된 양방향 정보 흐름을 갖도록 기능을 더욱 강화할 계획입니다.
온라인 거래 포털.
온라인 거래는 브로커를 물리적으로 포함시키지 않고 인터넷을 통해 이루어지는 투자 활동입니다. 최종 사용자 (투자자)는 ICICdirect, motilaloswal, smartjones 및 sharekhan과 같은 온라인 거래 포털에 등록해야합니다. 따라서 투자자는 계약에 명시된 조건에 따라 다른 유가 증권을 거래하는 계약을 회사와 체결하게됩니다. 온라인 거래 포털의 서버는 항상 증권 거래소 및 지정된 은행에 연결되어 있으므로 주문 처리가 실시간으로 이루어집니다. 투자자는 거래 내역을 업데이트하고 전자 메일 또는 인터페이스를 통해 주문 상태를 확인할 수도 있습니다.
Motilal Oswal Securities Limited의 최고 기술 책임자 인 Harish Malhotra는 "포털은 탐색하기 쉬워야하며 가장 적은 클릭 수로 유용하고 관련성이 높은 정보를 제공해야하며 개인화해야합니다."라고 말합니다. 그러나 매우 중요한 측면은 시스템이 비 호환성 문제없이 온라인 교환기의 인터페이스와 직접 인터페이스 할 수 있어야한다는 것입니다.
ICICIdirect는 128 비트 암호화를 사용하는 SSL (Secure Socket Layer)을 사용하여 인터넷을 통해 전송되는 정보가 안전하고 제 3자가 액세스 할 수 없도록합니다.
사용자는 일반적으로 은행 계좌, Demat 계좌 및 중개 계좌를 단일 인터페이스로 연결하는 옵션을 제공받습니다. 또한 모든 교환에 대한 단일 창과 전체 주문 라우팅 메커니즘에 대한 단일 화면이 있습니다. 사용 된 하드웨어는 웹 및 응용 프로그램 서버, 스위치, 라우터, 방화벽 및 보안 장치 및 특수 장치로 구성됩니다.
Motilaloswal은 응용 프로그램 및 데이터베이스, 시스코 라우터 및 Checkpoint 방화벽에 Compaq 서버를 사용합니다. 시스템은 사내 팀에 의해 사용자 정의되었습니다. 거래 응용 프로그램은 아웃소싱됩니다. "우리는 또한 별도의 위치에서 주기적으로 백업되는 오프라인 스토리지를 가지고있다" Harish는 말합니다.
무역 포털의 성공은 분명히 최종 사용자를위한 서비스 부케에 달려 있습니다. 대부분의 포털은 다양한 조건에 따라 작은 등록비와 중개 수수료를 부과합니다. 그러나 조직이 고객 중심의 서비스와 전달 모델에 집중하는 것이 실제로 가장 큰 관심을 기울이는 것이 중요합니다.

알고리즘 트레이딩 시스템 아키텍처.
이전에이 블로그에서 지적 알고리즘 트레이딩 시스템의 개념적 아키텍처와 생산 알고리즘 트레이딩 시스템의 기능적 및 비 기능적 요구 사항에 대해 작성했습니다. 그 이후로 필자는 이러한 아키텍처 요구 사항을 충족시킬 수 있다고 믿는 시스템 아키텍처를 설계했습니다. 이 글에서는 ISO / IEC / IEEE 42010 시스템의 지침과 소프트웨어 엔지니어링 아키텍처 설명 표준을 따르는 아키텍처에 대해 설명합니다. 이 표준에 따르면 아키텍처 설명은 다음과 같아야합니다.
여러 표준화 된 아키텍처 뷰 (예 : UML) 및 설계 결정과 아키텍처 요구 사항 간의 추적 가능성 유지.
소프트웨어 아키텍처 정의.
시스템 아키텍처가 무엇인지에 대해서는 아직 합의가 이루어지지 않았습니다. 이 기사의 맥락에서 기능 요구 사항을 충족시키는 응용 프로그램 구성 요소를 지정, 배포 및 실행할 수있는 인프라로 정의됩니다. 기능 요구 사항은 시스템 및 해당 구성 요소의 예상 기능입니다. 비 기능 요구 사항은 시스템의 품질을 측정 할 수있는 방법입니다.
비 기능 요구 사항이 만족스럽지 않으면 기능 요구 사항을 완전히 만족시키는 시스템은 기대에 미치지 못할 수 있습니다. 이 개념을 설명하기 위해 다음과 같은 시나리오를 고려하십시오. 방금 구입했거나 구축 한 알고리즘 거래 시스템이 우수한 거래 결정을 내리지 만 조직의 위험 관리 및 회계 시스템과 완전히 작동하지 않습니다. 이 시스템이 귀하의 기대에 부응합니까?
개념적 아키텍처입니다.
개념적보기는 높은 수준의 세분화 수준에서 시스템에 존재하는 고급 개념과 메커니즘을 설명합니다. 이 수준에서 알고리즘 트레이딩 시스템은 4 개의 레이어와 두 가지 아키텍처 측면에서 분리 된 이벤트 기반 아키텍처 (EDA)를 따릅니다. 각 레이어 및 aspect 참조 아키텍처 및 패턴이 사용됩니다. 건축 패턴은 특정 요구 사항을 달성하기위한 입증 된 일반 구조입니다. 건축 측면은 여러 구성 요소에 걸쳐있는 교차 절단 문제입니다.
이벤트 중심 아키텍처 - 이벤트를 생성, 감지, 소비 및 반응하는 아키텍처입니다. 이벤트에는 실시간 시장 이동, 복잡한 이벤트 또는 트렌드, 거래 이벤트가 포함됩니다. 주문 제출.
이 다이어그램은 알고리즘 거래 시스템의 개념적 아키텍처를 보여줍니다.
참조 아키텍처.
비유를 사용하기 위해 기준 아키텍처는 내 하중 벽에 대한 청사진과 유사합니다. 이 청사진은 공통적으로 발생하는 요구 사항을 충족시키기 때문에 어떤 건물이 건설되고 있는지에 관계없이 여러 건물 설계에 재사용 할 수 있습니다. 마찬가지로 참조 아키텍처는 특정 요구 사항을 만족하는 구체적인 소프트웨어 아키텍처를 구성하는 데 사용할 수있는 일반 구조 및 메커니즘을 포함하는 템플릿을 정의합니다. 알고리즘 거래 시스템의 아키텍처는 공간 기반 아키텍처 (SBA)와 모델 뷰 컨트롤러 (MVC)를 참조로 사용합니다. 운영 데이터 저장소 (ODS), 추출 변환 및로드 (ETL) 패턴 및 데이터웨어 하우스 (DW)와 같은 우수 사례도 사용됩니다.
모델보기 컨트롤러 - 정보의 표현과 사용자의 상호 작용을 구분하는 패턴입니다. 공간 기반 아키텍처 - 느슨하게 연결된 처리 장치가 공간이라고하는 공유 연관 메모리 (아래 참조)를 통해 서로 상호 작용하는 인프라를 지정합니다.
구조보기.
아키텍처 구조 뷰는 알고리즘 거래 시스템의 구성 요소와 하위 구성 요소를 보여줍니다. 또한 이러한 구성 요소가 물리적 인프라에 어떻게 배치되는지를 보여줍니다. 이 뷰에 사용 된 UML 다이어그램에는 구성 요소 다이어그램과 배포 다이어그램이 포함됩니다. 다음은 SBA 참조 아키텍처의 전체 알고리즘 트레이딩 시스템 및 처리 단위의 배포 다이어그램과 각 계층의 관련 구성 요소 다이어그램 갤러리입니다.
자동화 된 상인 / 이벤트 처리 구성 요소 다이어그램 데이터 소스 및 사전 처리 계층 구성 요소 다이어그램 MVC 기반 사용자 인터페이스 구성 요소 다이어그램.
건축 전술.
소프트웨어 엔지니어링 연구소에 따르면 아키텍처 전술은 아키텍처 설계 결정을 통해 품질 속성 모델의 일부 측면을 조작하여 품질 요구 사항을 충족시키는 수단입니다. 알고리즘 거래 시스템 아키텍처에서 사용되는 간단한 예제는 연속 쿼리 구성 요소를 사용하여 운영 데이터 저장소 (ODS)를 '조작'하는 것입니다. 이 구성 요소는 복합 이벤트를 식별하고 추출하기 위해 ODS를 지속적으로 분석합니다. 아키텍처에서 사용되는 전술은 다음과 같습니다.
이벤트 및 순서 큐의 장애 패턴 이벤트 및 순서 큐의 공유 메모리 ODS의 CQL (지속적인 쿼리 언어) 수신 데이터의 필터 디자인 패턴을 사용한 데이터 필터링 모든 수신 및 송신 연결의 정체 방지 알고리즘 활성 큐 관리 (AQM ) 및 명시 적 정체 통지 업그레이드 용량을 갖춘 상용 컴퓨팅 리소스 (확장 가능) 모든 단일 실패 지점에 대한 능동 중복 ODS의 인덱싱 및 최적화 된 지속성 구조 ODS에 대한 정기적 인 데이터 백업 및 정리 스크립트 일정 계획 모든 데이터베이스의 트랜잭션 내역 모든 오류를 탐지하는 명령 타임 스탬프가있는 이벤트에 주석 처리하여 '부실'이벤트를 건너 뜁니다. 최대 거래량 자동화 된 상인 구성 요소는 분석을 위해 메모리 내 데이터베이스를 사용합니다. AT에 연결하는 사용자 인터페이스의 2 단계 인증 사용자 인터페이스 및 AT 연결에 대한 암호화 MVC가보기를 관리하기위한 관찰자 디자인 패턴.
위의 목록은 아키텍처 설계 중 확인한 몇 가지 설계 결정 사항입니다. 그것은 전술의 완전한 목록이 아니다. 시스템이 개발됨에 따라 기능적 및 비 기능적 요구 사항을 충족시키기 위해 여러 가지 수준의 세분화 된 수준에서 추가적인 전술을 사용해야합니다. 다음은 장애 요인 디자인 패턴, 필터 디자인 패턴 및 연속 쿼리 구성 요소를 설명하는 세 가지 다이어그램입니다.
행동 적 견해.
이 아키텍처보기는 구성 요소와 계층이 서로 상호 작용하는 방법을 보여줍니다. 이는 아키텍처 설계를 테스트하고 시스템을 종단 간으로 이해하기위한 시나리오를 작성할 때 유용합니다. 이 뷰는 시퀀스 다이어그램과 활동 다이어그램으로 구성됩니다. 알고리즘 트레이딩 시스템의 내부 프로세스와 트레이더가 알고리즘 트레이딩 시스템과 상호 작용하는 방법을 보여주는 활동 다이어그램은 아래와 같습니다.
기술 및 프레임 워크.
소프트웨어 아키텍처 설계의 마지막 단계는 아키텍처를 실현하는 데 사용할 수있는 잠재적 기술 및 프레임 워크를 식별하는 것입니다. 일반적인 원칙으로서 기존 기술의 기능적 및 비 기능적 요구 사항을 적절하게 충족시키는 경우 더 나은 방법을 사용하는 것이 좋습니다. 프레임 워크는 구현 된 참조 아키텍처이다. JBoss는 JEE 참조 아키텍처를 구현하는 프레임 워크입니다. 알고리즘 트레이딩 시스템을 구현할 때 다음 기술과 프레임 워크가 흥미롭고 고려되어야합니다.
CUDA - NVidia는 고성능 전산 금융 모델링을 지원하는 많은 제품을 보유하고 있습니다. CPU 대신 GPU에서 몬테카를로 시뮬레이션을 실행할 때 성능을 최대 50 배 향상시킬 수 있습니다. Apache River - River는 분산 시스템을 개발하는 데 사용되는 툴킷입니다. 이것은 SBA 패턴 인 Apache Hadoop을 기반으로 애플리케이션을 구축하기위한 프레임 워크로 사용되었습니다. 퍼베이시브 로깅이 필수 인 경우 Hadoop을 사용하면 큰 데이터 문제에 대한 흥미로운 솔루션을 얻을 수 있습니다. Hadoop은 CUDA 기술을 지원하는 클러스터 환경에 배치 될 수 있습니다. AlgoTrader - 오픈 소스 알고리즘 거래 플랫폼. AlgoTrader는 자동화 된 상인 구성 요소의 위치에 잠재적으로 배치 될 수 있습니다. FIX 엔진 - FIX, FAST 및 FIXatdl을 포함한 FIX (Financial Information Exchange) 프로토콜을 지원하는 독립 실행 형 응용 프로그램입니다.
기술이나 프레임 워크는 아니지만 시스템과 구성 요소의 상호 운용성을 향상시키기 위해 API (Application Programming Interface)로 구성 요소를 구축해야합니다.
결론.
제안 된 아키텍처는 알고리즘 거래 시스템에서 확인 된 매우 일반적인 요구 사항을 충족 시키도록 설계되었습니다. 일반적으로 알고리즘 거래 시스템은 각 구현마다 다른 세 가지 요소로 복잡합니다.
외부 엔터프라이즈 및 Exchange 시스템에 대한 종속성 비 기능 요구 사항에 대한 도전과 진화하는 아키텍처 제약.
따라서 제안 된 소프트웨어 아키텍처는 특정 조직 및 규정 요구 사항을 충족시키고 지역 제약 조건을 극복하기 위해 사례별로 적용해야합니다. 알고리즘 거래 시스템 아키텍처는 자신의 알고리즘 거래 시스템을 설계하고자하는 개인 및 조직을위한 참고서 일뿐입니다.
사용 된 전체 사본 및 출처는 내 보고서 사본을 다운로드하십시오. 고맙습니다.
이전 이야기.
알고리즘 트레이딩 시스템 요구 사항.
다음 이야기.
Particle Swarm Optimization을 이용한 포트폴리오 최적화.
멋진 개관과 아키텍처에 대한 좋은 출발. 당신의 결론은 적절한 것이었고, 알고리즘 거래 소프트웨어 시스템이 관련성을 유지하기 위해 지속적인 백 테스트와 조정이 필요한 이유를 지적했습니다. 좋은 읽을 거리!
2016 년 2 월 1 일
상품 또는 고정 수입의 데이터가 부정확하거나 수신 속도가 느린 경우 모델은 특히 Black Swann 이벤트의 공간에서 계산하기가 어려울 수 있습니다.
이 기사를 주셔서 대단히 감사합니다. 1990 년대 후반부터 AI에 대해 생각해 봤는데 마침내 기술과 API가 일반적으로 제공됩니다. 기사와 블로그는 이전 연도의 꿈을 실현하는 첫 걸음을 내딛는 데 큰 도움이됩니다. 당신의 추가 벤처에 많은 감사와 행운을 빕니다!
귀하의 진전 상황을 계속 알려 주시기 바랍니다. 나는 아주 흥미 롭다. 고맙습니다.
댓글을 제출하십시오.
답장 취소.
Turing Finance를 팔로우하십시오.
Turing 금융 메일 링리스트.
Turing Finance의 친구들.
Quantocracy는 매일 매일 게시되는 새로운 분석에 대한 링크가있는 최고의 양적 금융 블로그 수집기입니다.
NMRQL은 내가 속한 양적 헤지 펀드 다. 우리는 기계 학습을 사용하여 시장을 이기고 시도합니다.

알고리즘 트레이딩 시스템 요구 사항.
현재 소프트웨어 아키텍처에 관한 강의를 듣고 있습니다. 이 수업에서는 각 학생이 시스템을 선택하고 건축 요구 사항을 정의하며 이러한 요구 사항을 충족 할 수있는 솔루션을 설계합니다. 기술적 인 문제 때문에 그리고 금융 시장을 사랑하기 때문에 알고리즘 거래 시스템을 선택했습니다. 알고리즘 거래 시스템 (AT)은 계산 알고리즘을 사용하여 제출 결정 후 거래 결정, 주문 제출 및 주문 관리를 수행합니다. 최근 몇 년 동안 AT는 인기를 얻었으며 현재 국제 교류를 통해 거래되는 대부분의 거래를 설명합니다. 프로그래밍 된 거래와 알고리즘 거래는 구분됩니다. 프로그램 된 거래는 큰 시장 주문을 더 작은 주식으로 분해하는 것과 관련이 있습니다. 이 기사에서 프로그래밍 된 거래는 AT의 보안 요구 사항으로 간주됩니다.
알고리즘 트레이딩 시스템 도입.
일반적으로 말하자면, 소매 투자자, 독점 상인, 시장 제작자, 매수 측 기관 및 매도 측 기관의 5 가지 유형의 시장 참여자가 있습니다. AT는 독점적 인 구매 측 기관에서 가장 많이 사용되지만 역동적 인 변화를 보이고 있습니다. 알고리즘 서비스 거래 (ATAAS)는 알고리즘 투자를 소매 투자자가 이용할 수 있도록합니다 (부록 참조). 이 기사에서는 독점 구매 측 기관에서 사용하는 AT의 아키텍처 요구 사항에 대해 설명합니다. 최상위 수준에서 AT는 세 가지 기능을 수행합니다. 즉, 거래 결정을 내리고, 거래 주문을 작성하며, 제출 후 해당 주문을 관리합니다. 이것들 아래에 더 많은 상세한 기능적 요구 사항들이 있으며, 그 중 일부는 아키텍처에 의해 만족 될 수 있습니다.
소프트웨어 아키텍처 소개.
많은 논쟁이 소프트웨어 아키텍처의 정의를 둘러싼 다. 이 기사의 맥락에서 소프트웨어 아키텍처는 사용자 기능을 제공하는 응용 프로그램 구성 요소를 지정, 배포 및 실행할 수있는 인프라로 정의됩니다. 소프트웨어 시스템은 기능적 및 비 기능적 요구 사항을 충족시켜야합니다. 기능 요구 사항은 시스템 구성 요소의 기능을 지정합니다. 비 기능 요구 사항은 시스템 성능을 측정하는 기준을 지정합니다. 기능적 요구 사항을 만족하는 소프트웨어 시스템은 여전히 ​​사용자 기대치를 충족시키지 못할 수 있습니다. 적시에 거래를 제출할 수있는 AT는 재정적 손실을 초래할 수 있습니다. 소프트웨어 아키텍처는 기본적으로 비 기능 요구 사항을 만족하는 인프라를 제공하며, 기능 요구 사항을 충족하는 구성 요소를 배포하고 실행할 수 있습니다. 따라서 알고리즘 거래 시스템 요구 사항은 기능적 요구 사항과 비 기능적 요구 사항으로 크게 나눌 수 있습니다.
기능 요구 사항.
'거래 의사 결정'최상위 요구 사항 아래에는 세 가지 고급 요구 사항이 있습니다.
시장 데이터 얻기 - 구조화 및 비정형 데이터를 다운로드, 필터링 및 저장합니다. 구조화 된 데이터에는 프로토콜을 사용하여 전송 된 로이터 또는 블룸버그의 실시간 시장 데이터가 포함됩니다. 고치다. 비정형 데이터에는 뉴스 및 소셜 미디어 데이터가 포함됩니다. 거래 전략 정의 - 새로운 거래 규칙 및 전략을 지정합니다. 거래 규칙은 지표, 부등식 및 숫자 값으로 구성됩니다. "PE 비"& lt; 10. 거래 규칙은 거래 전략을 정의하기위한 의사 결정 트리로 구성됩니다 (아래 그림 참조). 거래 전략에 따라 증권 분석 - 각 보안에 대해 데이터를 얻고 거래 전략을 통해 필터링하여 구매할 보안을 결정합니다. 또한 각 공개 포지션에 대해 매도 할 보안을 결정하십시오. 참고 :이 요구 사항은 다를 수 있습니다.
'거래 주문 생성'최상위 요구 사항 아래에는 두 가지 고급 요구 사항이 있습니다.
거래 정보를 얻으십시오 - 각 결정에 대해 보안 기호, 가격, 수량 등을 얻으십시오. 거래 주문 작성 - 각 결정에 대해 주문 유형을 지정하고 거래 정보를 추가하십시오. 장기, 단기, 시장, 한도, 중지 및 조건부의 6 가지 주문 유형이 있습니다.
'주문 관리'최상위 요구 사항 아래에는 세 가지 고급 요구 사항이 있습니다.
보류중인 주문 관리 - 각 주문에 대해 주문 확인, 확인 및 주문 확인 - 주문을 교환소, 다크 풀 또는 중개인에게 전달합니다. 제출 된 주문 관리 - 제출 된 각 주문의 상태를 추적하고 주문이 일치하면 열린 위치를 만듭니다. . 주문이 일치하지 않으면 주문을 중단하십시오.
이 다이어그램은 거래 전략을 거래 규칙의 의사 결정 트리로 정의 할 수있는 방법을 보여줍니다.
비 기능 요구 사항.
예를 들어 서로간에 교환되는 많은 비 기능 요구 사항이 있습니다. 성능 향상은 총 소유 비용 (TCO) 증가로 이어집니다. 비 기능적 알고리즘 거래 시스템 요구 사항에는 다음이 포함됩니다.
확장 성 - 시스템이 증가하거나 확장되는 작업 부하를 처리하고 수행 할 수있는 능력입니다. AT는 프로세스의 데이터 피드 수, 거래하는 거래 수 및 거래 할 수있는 증권의 수에 따라 확장 가능해야합니다. 성과 - 시스템이 수행하는 작업량과 작업에 필요한 시간 및 자원을 비교 한 것입니다. AT는 빠른 응답 시간 (시장으로 돌아 가기)과 높은 처리 및 네트워크 처리량을 가져야합니다. 수정 가능성 - 시스템을 쉽게 변경할 수 있습니다. AT는 쉽게 수정할 수있는 거래 전략 및 데이터 처리가 있어야합니다. 신뢰성 - 시스템이받은 입력에 대해 올바른 결과를 산출하기위한 정확성과 의존성입니다. AT의 오류 및 버그로 인해 막대한 손실과 벌금이 발생할 수 있으므로 안정성이 중요합니다. 이것에 대한 증거는 기사 수도의 전함을보십시오. 감사 기능 - 시스템을 감사 할 수있는 용이성입니다. 최근 AT & T의 건방진 사례가 감사 기관에 AT의 주목을 받았다. 따라서 재무, 컴플라이언스 및 IT 관점에서 감사 가능해야합니다. 보안 - 테러, 도난 또는 간첩과 같은 범죄 행위에 대한 조직의 안전성입니다. 거래 전략은 독점적이며 귀중한 지적 재산이기 때문에 반드시 확보해야합니다. 또한 AT를 사냥으로부터 보호하기 위해 프로그래밍 된 거래 전략을 사용하여 주문을 난독 화해야합니다. 내결함성 (Fault Tolerance) - 시스템이 오류 또는 실패 후에도 올바르게 작동 할 수있는 기능입니다. 이는 재무 적 손실을 피하기 위해 AT가 오류 발생 후에도 안정적이어야한다는 점을 제외하면 신뢰성과 유사합니다. 상호 운용성 (Interoperability) - 시스템이 다양한 범위의 관련 시스템에서 작동 할 수있는 용이성입니다. 이는 주문 관리 시스템, 포트폴리오 관리 시스템, 위험 관리 시스템, 회계 시스템, 심지어는 은행 시스템과의 인터페이스가 필요한 AT의 경우 중요합니다.
아키텍처 범위 개요.
아키텍처 범위는 기능적 및 비 기능적 요구 사항을 충족하기 위해 구성 요소에서 사용하는 아키텍처에서 지원하는 서비스 집합입니다. 이 아키텍처 범위에 대한 자세한 분석은 자세한 요구 사항 문서를 참조하십시오. 고급 수준에서 다음 서비스를 아키텍처에서 제공해야합니다.
다중 데이터 스트림, 관련없는 데이터에 대한 필터 및 임시 데이터 파티셔닝을 지원하는 수정 가능한 데이터 사전 처리 환경 다중 처리 장치 (클러스터), 실시간 성능 모니터링, 메시지 지향 통신 프레임 워크, 스케줄링을 지원하는 분산 처리 환경 시간적 데이터 집합, 로드 밸런싱 및 데이터 복제를 지원하는 메모리 (SAN) - 임시 데이터 집계, 연속 쿼리 및 로깅을 지원하는 SAN (저장 영역 네트워크) (감사 추적 용) 데이터 복구 (DR) 환경 - SAN 및 주문 관리 시스템 복제 구성 요소에 대한 표준 API를 노출하고 내부 및 외부 구성 요소를 서로 연결하는 통합 환경 - 동시 입력 스트림을 지원하는 주문 관리 시스템 , 수동 리던던시 및로드 밸런싱, 주문에 대한 ACID 기준, 감사 내역 및 복제본 cated 시스템 사용 환경 - 여러 사용자 프로필을 지원하고 완벽하게 관리되는 프론트 엔드를 알고리즘 거래 시스템에 노출합니다.
액세스 및 통합 요구 사항.
액세스 요구 사항은 사용자가 시스템 구성 요소에 액세스 할 수있는 방법을 설명합니다. 알고리즘 거래 시스템은 세 가지 인터페이스, 즉 새로운 거래 규칙, 거래 전략 및 데이터 소스를 정의하는 인터페이스, 시스템 관리자가 클러스터를 추가하고 아키텍처를 구성 할 수있는 백엔드 인터페이스. IT 통제 및 사용자 액세스 권한을 확인하기위한 읽기 전용 감사 인터페이스가 있습니다. 구성 요소와 외부 시스템을 통합하기위한 사전 요구 사항을 통합 요구 사항이라고합니다. 알고리즘 거래 시스템은 파일 기반 통합, 메시지 기반 통합 및 데이터베이스 통합을 지원해야합니다. 따라서 다음 요구 사항을 아키텍처에서 만족해야합니다.
데이터베이스 통합 - ODBC, JDBC, ADO 및 XQC 지원 파일 기반 통합 - CSV, XML 및 JSON 파일 지원 메시지 기반 통합 - FIX, FAST 및 FIXatdl 지원.
건축상의 제약.
파란색 점은 네트워크 대기 시간이 최소화되는 실제 위치를 표시하고 빨간색 점은 대규모 금융 거래의 실제 위치를 나타냅니다. 알고리즘 거래 시스템의 성능을 극대화하려면 네트워크 대기 시간을 최소화하는 위치에 시스템을 배치해야합니다. 출처 : MIT 공개 보도 자료 : dspace. mit. edu/handle/1721.1/6285.
아키텍처 제약은 구축되는 아키텍처의 성능을 제한하는 요소입니다. 여기서 언급 할 두 가지 제약은 물리적 네트워크 제약과 규제 제약입니다. 열악한 통신 네트워크로 인해 물리적 네트워크 제약이 시스템에 가해집니다. 이 제약 조건을 완화하려면 네트워크 대기 시간을 최소화해야하는 시스템을 구축해야합니다. 네트워크 제약을 완화하는 또 다른 방법은 알고리즘 거래 시스템을 시장 거래소와 함께 배치하는 것입니다. 이미 말한 바에 따르면, 공동 위치 결정은 추가 처리 및 공간 제약을 도입합니다.
규제의 제약은 법과 규정을 통해 도입됩니다. 알고리즘 트레이딩 시스템은 2010 년 플래시 사고 이후 더 많은 규제가 이루어지기 때문에 알고리즘 트레이딩 시스템의 설계 및 구현에서 점점 더 중요한 요소가되었습니다. 일반적으로 AT는 시스템 준수 및 무결성 (SCI), EMEA 알고리즘 트레이딩 시스템 지침, ISO 9000 알고리즘 거래 표준 (AT9000) 및 국제 재무보고 표준 (IFRS)에 관한 SEC의 규칙을 준수해야합니다. .
결론.
알고리즘 트레이딩 시스템 아키텍처는 시스템에서 기대되는 엄격한 비 기능 요구 사항과 자동화 된 거래를 규제하는 광범위한 규제 및 규정 준수 요구 사항으로 인해 복잡합니다. 이러한 복잡성 때문에 시스템 아키텍처의 설계 및 구현에 신중한 고려가 필요합니다. 오픈 소스 알고리즘 거래 아키텍처를 설계 할 때 이러한 시스템을 설계 할 때 종종 간과되는 아키텍처 요구 사항을 지적하고자합니다. 이 문서에서 확인 된 요구 사항은 완벽하지 않으며 필연적으로 시간이 지남에 따라 발전 할 것입니다. 이 기사의 두 번째 기사에서는 위에서 언급 한 요구 사항을 충족하는 소프트웨어 아키텍처에 대한 설계를 포함합니다. 알고리즘 거래에 대한 자세한 내용은 언제든지 저에게 연락하십시오.
보고서 사본을 다운로드하려면 여기를 클릭하십시오. 출처 전체 목록은 보고서를 참조하십시오.
ATAAS 서비스 제공 업체는 다음을 포함하지만 이에 국한되지 않습니다.
Quantopian - 사용자는 Python으로 양적 거래 전략을 정의하고이를 다시 테스트 할 수 있습니다. 사용자는 실제 시장에서 이러한 전략을 실행할 수도 있습니다. Quantopian은 최근에 그들의 서비스를 확장하기 위해 670 만 달러의 투자를 받았습니다. EquaMetrics - RIZM 사용자는 시각적으로 새로운 알고리즘 거래 전략을 수립하고, 해당 전략을 다시 테스트하고, 실제 시장에서 전략을 실행합니다. EquaMetrics는 최근 450 만 달러 상당의 RIZM에 대한 새로운 기금을 발표했습니다. 중개업 - 일부 중개인은 거래자가 자신의 거래 전략을 자동으로 실행하는 거래용 로봇을 만들 수 있습니다.
이전 이야기.
신경망을 이용한 BRICs 경제 예측.
다음 이야기.
알고리즘 트레이딩 시스템 아키텍처.
댓글을 제출하십시오.
답장 취소.
Turing Finance를 팔로우하십시오.
Turing 금융 메일 링리스트.
Turing Finance의 친구들.
Quantocracy는 매일 매일 게시되는 새로운 분석에 대한 링크가있는 최고의 양적 금융 블로그 수집기입니다.
NMRQL은 내가 속한 양적 헤지 펀드 다. 우리는 기계 학습을 사용하여 시장을 이기고 시도합니다.

주식 거래 시스템.
교육 및 자습서를위한 Excel 주식 거래 시스템.
Excel 주식 거래 시스템.
모델을 작성하고 사용하는 방법을 보여주는 완전한 PDF 안내서. PDF 가이드와 VBA 코드 및 FAQ 섹션의 모든 것을 포함하는 완전한 온라인 코스입니다. 과거 분석을 위해 그래프 및 거래 통계가 포함 된 MS Excel의 사전 구축 된 전체 테스트 모델. 30 일간 온라인으로 자료를 다운로드하고 새로운 Stock Trading Model을 작성하고 사용하는 방법을 배웁니다. 구매시 제공된 로그인 및 암호로 PDF 가이드, 온라인 과정 및 백 테스트 모델에 즉시 액세스 할 수 있습니다. 수익성있는 거래 도구에 Excel, VBA, 공식 및 데이터 소스를 통합하는 방법을 익히십시오. 모든 Excel 모델링 또는 분석 프로젝트에 적용 할 수있는 고유 한 지식을 습득하십시오. 반복적 인 소프트웨어를 제거하고 비용을 절감하여 비용을 절감하십시오. 몇 초 안에 수백 개의 주식에 대한 거래 신호를 계산하십시오.
Excel을위한 주식 거래 시스템 목차 :
소개 기본 기술 요구 사항 5 기술 지표 1 단계 : ADX (Average Directional Movement Index) 2 단계 : 추세 또는 진동? Step 2A : 동향 = 움직이는 평균 크로스 오버 Step 2B : Stochastic Oscillator Step 3 : Bollinger Band로 신호를 매수 / 매도하기 4 단계 : DMI 시스템 아키텍처로 성공률 백분율 향상하기 디렉터리 및 파일 구조 구축하기 스프레드 시트 구성하기 구조 표시기 수식 작성하기 시장 데이터 ADX 표시기 이동 평균 Stochastic Bollinger Bands DMI 매크로 코드 작성 1 단계 : Visual Basic 편집기 창 열기 2 단계 : 매크로 코드 작성 3 단계 : 코드 오류 검사 코드 작성 기능 수행 시트 1 단계 : 신호 시트 레이블 및 수식 2 단계 : 범위 작성 3 단계 : 컨트롤 단추 추가 및 매크로 지정 4 단계 : 워크 시트 서식 지정 데이터 소스 파일 작성 다른 소스의 데이터로드. CSV 또는. TXT 파일로드 야후의 무료 역사 데이터 금융 일상적으로 모델 실행 모델 실행시기 다른 시장 정보와 신호 결합 돈 및 위험 관리 일반적인 매크로 오류 FAQ 모델을 백 테스트합니다.
(2016-10-04 업데이트)
주식 거래 시스템을위한 관련 Excel 솔루션.
주요 Excel 솔루션 카테고리 찾아보기.
추가 Excel 비즈니스 솔루션은 무료 Excel 솔루션 및 가장 많이 사용되는 것으로 분류됩니다. 특정 사용자 요구 사항에 대해 제안 된 추가 솔루션은 Excel 도움말 포럼에서 찾을 수도 있고 Excel 프리랜서 커뮤니티에 대한 프로젝트로 제안 할 수도 있습니다.

No comments:

Post a Comment