develop custom_top_html:no
default debug random = 2 / type = READ / detected = READ / doc_Srl = 6670619


For the last 6 months I have been focused on the process of building the full technology stack of an automated trading system. I have come across many challenges and learnt a great deal about the two different methods of backtesting  (Vectorised and Event driven). In my journey to building an event driven backtester, it came to my surprise that what you would end up with is close to the full technology stack needed to build a strategy, backtest it, and run live execution.
My biggest problem when tackling the problem was a lack of knowledge. I looked in many places for an introduction to building the technology or a blog that would guide me. I did find a few resources that I am going to share with you today.

For Beginners:

For the readers new to quantitative trading I would recommend Ernie P. Chan’s book titled: Quantitative Trading: How to build your own algorithmic trading business. This book is the basics. It’s actually the first book I read on quantitative trading and even then I found it very basic but there are some notes you should take.
From page 81-84 Ernie writes about how at the retail level a system architecture can be split up into semi-automated and fully automated strategies.
A semi-automated system is suitable if you want to place a few trades a week. Ernie recommends using Matlab, R, or even Excel. I have used all 3 platforms and this is my advice:
  1. Skip Matlab, it cost a lot of money and I could only get access to it at the university laboratories. There isn’t a lot of training material like blogs or books that will teach you how to code a strategy using Matlab.
  2. R has tons of resources that you can make use of in order to learn how to build a strategy. My favorite blog covering the topic is: QuantStratTradeR  run by Ilya Kipnis.
  3. Microsoft Excel is most likely where you will start if you don’t have programming experience. You can use Excel for semi-automated trading but it’s not going to do the trick when it comes to building the full technology stack.
Semi-automatic framework pg 81
Completely automated trading systems are for when you want to automatically place trades based on a live data feed. I coded mine in C#, QuantConnect also uses C#, QuantStart walks the reader through building it in Python, Quantopian uses Python,  HFT will most likely use C++. Java is also popular.
Completely automated trading framework pg 84

Step 1: Getting a head start

Do the Executive Program in Algorithmic Trading offered by I just started the course and the very first set of lectures was on system architecture. It would have saved me about 3 months of research if I had started here. The lectures walked me through each component that I would need as well as detailed description of what each component needs to do. Below is a screen shot of one of their slides used in the presentation:
You can also use this general framework when evaluating other automatic trading systems.
At the time of writing I am only in the third week of lectures but I am confident that a practitioner will be able to build a fully automated trading strategy that could, with a bit of polish, be turned into the beginnings of a quantitative hedge fund.
Note: the course is not focused on building the technology stack.

Step 2: Code a basic event driven backtester

Michael Hallsmore’s blog & book “Successful Algorithmic Trading”
This book has sections dedicated to building a robust event driven backtester. He walks the reader through a number of chapters that will explain his choice of language, the different types of backtesting, the importance of event driven backtesting, and how to code the backtester.
Michael introduces the reader to the different classes needed in an object orientated design. He also teaches the reader to building a securities master database. It is here that you will see how the system architecture from QuantInsti fits in.
Note: You will need to purchase his book: “Successful Algorithmic Trading”, his blog leaves out too much information.

Step 3: Turn to

After completing:
  1. The EPAT program
  2. Reading “Successful Algorithmic Trading” & coding a backtester in a different language of your choice.
You should move onto a blog called and read the article titled “Algorithmic Trading System Architecture” By: Stuart Gordon Reid.   In his post he describes the architecture following the guidelines of the ISO/IEC/IEEE 42010 systems and software engineering architecture description standard.
I found this post very technical and it has some great ideas that you should incorporate into your own architecture.
A screen shot from his post

Step 4: Study open source trading systems.

4.1) Quantopian

It goes without saying that Quantopian should be added to this list and I am embarrassed to say that I haven’t spent a lot of time using their platform (due to my choice of language). Quantopian has many perks but the ones that stick out most to me are the following:
  1. Easy to learn Python
  2. Free access to many datasets
  3. A huge community and competitions
  4. I love how they host QuantCon!
Quantopian is the market leaders in this field and is loved by quants all over!  Their open source project is under the code name Zipline and this is a little bit about it:
“Zipline is our open-sourced engine that powers the backtester in the IDE. You can see the code repository in Github and contribute pull requests to the project. There is a Google group available for seeking help and facilitating discussions.”
Here is a link to their documentation:

4.2) QuantConnect

For those of you unfamiliar with QuantConnect, they provide a full open source algorithmic trading engine. Here is a link 
You should have a look at their code, study it, & give them praise. They are Quantopians competition.
I would like to take this opportunity to thank the QuantConnect team for letting me pick their brain and for the brilliant service they provide.
Here is a link to their documentation:

Concluding remarks:

I hope this guide helps the members of the community. I wish I had this insight 6 months ago when I started coding our system.
Questions to the Readers:
  1. I would like to reach out to the community and ask: “What good algorithmic trading courses do you know of?” I would like to write a post that looks into the topic and provides a ranking.
  2. Are there any recommendations to building a fully automated trading system that you would like to add to this post?
Kind regards

Jacques Joubert 













* 게시글 내용 삭제레벨 강등

* 질문은 각 주제별 게시판에.


비트코인 암호화화폐 커뮤니티 땡글~ 땡글~


댓글 1
  • ?
    빗코부자됩시다 2018.03.15 01:49
    현업에서 일하시는 개발자신가요? 프로그래머 겸 부업으로 퀀트 하시는지 궁금합니다.. 적은 자본으로 돌리는 전업퀀트에 대해서 어떻게 생각하시는지..

List of Articles
번호 분류 제목 추천 수 조회 수 글쓴이 날짜
공지 탑마이닝 쌩광부님 땡글운영위 합류 13 updatefile 25 6336
공지 땡글 회원 / ESN 홀더분들을 위한 땡글인의 밤 공지 38 file 6 9794
공지 [Air Drop 이벤트] 게시판을 신설합니다 30 updatefile 2 54968
991 개발 마이닝풀허브 난이도 가져오려는데     json 형태로 값 주는 api는 없을까요? 찾아봤는데 못찾겠어요 ㅠㅠ           ------------------------------------- 꼬리말 * 게시글 내용 삭제시 레벨 강등 * 질문은 각 주제별 게시판에.   비트코인 암호화화... 2 615
990 질문 빗썸 api 접수 실패   현재 빗썸 api 이용해서 주문 내보고 있습니다. 그런데 주문을 내면 절반이상은 에러코드 5100이나 5600이 나옵니다. 원래 이렇게 주문접수시 실패 확률이 높은가요?                       ----------------------... 3 778
989 개발 코인개발 강의 합니다. 저 강의를 해볼까 합니다. 제가 하나 만들어서 런칭한 겁니다.   라이트코인 0.8 버전 기반으로 클론한 겁니다.    강의내용은 자기만의 코인을 만드는 방법으로, 우분... 1 1420
개발 완전 자동화된 트레이딩 시스템 아키텍쳐   For the last 6 months I have been focused on the process of building the full technology stack of an automated trading system. I have come across many challenges and learnt a great deal about the two... 1 1395
987 개발 Quandl에서 가상화폐 가격 데이터 가져오기 참조   DATA ORGANIZATION Quandl's data products come in many forms and contain various objects, including time-series and tables. Through our APIs and various tools (R, Python, Excel, etc.), users can acces... 708
986 개발 Python을 사용하여 Web Scraping하기   1. 크롤링 예제 대상 1.1. 상장사 리스트 bs4 사용 방법 소개 HTML 1.2. 네이버 증권 종목분석 네이버 금융에서 제공되는 코스피, 코스닥 상장사들의 ... 2 4338
985 개발 pandas으로 주식 시세 확인 및 이동평균선 구하기   판다곰(pandas)으로 주식 시세 확인 및 이동평균선 구하기 Posted on 7/21/2015 07:42:00 오후 by 김주훈 with No comments 분석 라이브러리인 판다스(Pandas)를 통해서 주식 시세를 확인 하고,   이동평균선(7일) ... 2116
984 개발 python 백테스팅 환경인 backtrader에 대한 소개 입니다   python 백테스팅 환경인 backtrader에 대한 소개 입니다. Introduction Backtrader is Python based backtesting/trading platform for developing home co... 1 1573
983 질문 빗썸 API로 자동매매 - json 에러 문제         안녕하세요?   파이썬으로 빗썸 자동매매 프로그래밍을 시도해 보고 있는 초보 개발자 입니다. 빗썸 api를 사용하다가 발생하는 json 에러 관련해서 여쭤보려고 합니다.   일단 프로그램 골자는 짜 놓고 있는... 6 1648
982 개발 코인원 트레이딩 도우미 (베타버전)   안녕하세요 트레이딩봇이 아닌 트레이딩도우미 라고 이름 지은 이유는 자동 매수기능이 빠져 있기 때문 입니다. 사실 처음에는 자동 매수 기능까지 있었는데 사용해본 대부분의 로직이 마음에  들지 않아서 과감히 ... 3 file 1 1712
981 개발 김치프리미엄 사이트를 오픈하였습니다 [엑스차트 v.beta 2.0] 땡글러 여러분 안녕하세요, 엑차입니다.   이번 x-chart 사이트 개편과 함께 김치프리미엄 차트를 오픈하였습니다.   세계시세(코인마켓캡)를 기준으로로, 국내 주요 5개 거래소-코인별 가격과 (빗썸, 업비트, 코인원... 7 file 7 4437
980 질문 업비트 오더 데이터 가져오는 방법 문의     업비트 오더북 가져올때 보내는 명령어를 어떻게 보내야 할까요..    안녕하세요.    업비트를 좀 분석하니 소켓으로 오더 데이터들을 받는게 보입니다. .    찾아보니      '[{"type":"recentCrix","codes":["CR... 8 2561
979 개발 셋톱박님 듀얼마이닝 풀셋팅 결과물 입니다. 클레이모어에서 -dcri 50까지땡겨봤습니다 더땡겨도 전류는여기서변하지않네요 105암페어 나옵니다. 카드하나당130w 12웨이구성시에는 rx580기준 210암페어 20분뒤쯤에 테스트기로 전압재어보았습니다. 보드쪽11.53 ... 2 file 1 811
978 개발 Python으로 트레이딩 시스템 만들기 - back testing 환경 구축 : backtrader 이용   Python으로 트레이딩 시스템 만들기 - back testing 환경 구축 : 오픈소스 backtrader 이용하는 방법 입니다. 자료가 도움이 되셨으면 "좋아요" 부탁 드립니다.   A few weeks ago, I ranted about the R backtesti... 2 1478
977 개발 비트코인 트레이딩봇 소개     자료가 도움이 되셨으면 "좋아요" 부탁 드립니다.     Gekko Gekko is a Bitcoin trading bot and backtesting platform that supports 18 different Bitcoin exchanges (including Bitfinex, Bitstamp and Polon... 2 1708
976 개발 알고리즘 트레이딩 아키텍쳐   알고리즘 트레이딩 아키텍쳐 아래 참조 하세요.   자료가 도움이 되셨으면 "좋아요" 부탁 드립니다.     Algorithmic Trading System Architecture 1549
975 개발 셋톱박님 오늘결과사진 참조   돈만원대하는 파워서플라이입니다. 메인보드 전원이랑 하드전원 켜는용입니다.ㅋㅋ (,실은공장에굴러댕기는슬립용파워)   RX580 6대 분배보드에 다꼽았습니다.   클레이모어 명령어로 100w셋팅 GPU-Z프로그램 기준... 2 file 791
974 질문 사이트 만들때...     esn과 비슷할수도 있는데..    그냥 문듯... bbs coin    응용해서...    사이트 만들어서 (뉴스 정치 이슈 기타...)    글을 올리면 일정수의 코인을 지급 하고    조회 호응도에 따라 코인수 적립 배당     댓... 2 615
973 질문 블록이 멈춘 코인을 살리는 방법이 없을까요...                     제가 채굴풀을 구축한다면 가능할까요? 아예 멈추어 버린 블록에 QT월렛에 묶여있는 코인을 구출하고 싶습니다... 방법이 있다면 머리 터져라 공부해야겠죠?? ㅠㅜ..   ------------------------... 4 1001
972 개발 자작 - 산업용 파워 서플라이용 파워분배 보드 완성 안녕하세요. 보드 제작 완성 되었습니다. 완성~~ --------------------------------------------------------------------------------------------------------------------------------------------------------- ... 8 file 5 1838
Board Pagination Prev 1 ... 30 31 32 33 34 35 36 37 38 39 ... 84 Next
/ 84