A Little About Me Head of IT Education

  • Slides: 40
Download presentation

A Little About Me • Head of IT Education • Computer Science Ph. D

A Little About Me • Head of IT Education • Computer Science Ph. D • 12 years as a quantitative analyst

A Little About Optiver

A Little About Optiver

Optiver Locations

Optiver Locations

Market Making • Estimating the price of a product right now instead of in

Market Making • Estimating the price of a product right now instead of in the future • Make bids & offers around our estimate

Arbitrage Trading • Quantifying the difference between the prices of related products • Low

Arbitrage Trading • Quantifying the difference between the prices of related products • Low risk (small overnight positions) • Minimal capital requirements • Natural progression for our systems

Would you like to play a game?

Would you like to play a game?

The Art of Market Making • Being to first to market is critical •

The Art of Market Making • Being to first to market is critical • Having the best pricing • Smart trading decisions

Outline • Text Processing at Optiver • Large-scale software development – What do we

Outline • Text Processing at Optiver • Large-scale software development – What do we develop? – Development theory vs practice – Methodological theory vs practice – Tips and Hints

Text Processing at Optiver

Text Processing at Optiver

Text Processing at Optiver • Most of our data comes from the financial exchanges

Text Processing at Optiver • Most of our data comes from the financial exchanges • … or commercial data providers • Surprisingly some key data is published on the web • … and must be ‘scraped’ into our database

Text Processing at Optiver • The basic process: 1. 2. 3. 4. Fetch from

Text Processing at Optiver • The basic process: 1. 2. 3. 4. Fetch from the remote site Extract relevant data Validate Store validated data

Text Processing at Optiver • Some things to remember – Keep the original data

Text Processing at Optiver • Some things to remember – Keep the original data – Make the process easily configurable – … and re-entrant – … and possible to restart at any point – Log all the things – Alert someone when it goes wrong

Sentiment Analysis “refers to the use of natural language processing, text analysis, computational linguistics,

Sentiment Analysis “refers to the use of natural language processing, text analysis, computational linguistics, and biometrics to systematically identify, extract, quantify, and study affective states and subjective information. ” - Wikipedia

Sentiment Analysis • It boils down to classifying text into groups • … often

Sentiment Analysis • It boils down to classifying text into groups • … often just: positive and negative

Sentiment Analysis • Generally found to have positive but relatively weak correlation to stock

Sentiment Analysis • Generally found to have positive but relatively weak correlation to stock performance • Winnowing out previously poor predictors improves correlation

Large-scale Software Development

Large-scale Software Development

What do we Develop? • • • Automatic trading systems Graphical User Interfaces Analysis

What do we Develop? • • • Automatic trading systems Graphical User Interfaces Analysis Tools Primarily in C++ Also C#, Go and Python

Software Development Theory vs Practice

Software Development Theory vs Practice

Algorithmic Complexity • Theory tells us how fast an algorithm is • But how

Algorithmic Complexity • Theory tells us how fast an algorithm is • But how does it perform in practice? • The theory is based on many generalising assumptions that don’t always apply

Generalising Assumption 1 • Limiting behaviour as inputs reach infinity • Real problems are

Generalising Assumption 1 • Limiting behaviour as inputs reach infinity • Real problems are often smaller • Lessons: – Creating & maintaining data structures isn’t free – Sometimes simpler is better

Generalising Assumption 2 •

Generalising Assumption 2 •

Generalising Assumption 3 •

Generalising Assumption 3 •

Memory access costs Hash Table vs Array

Memory access costs Hash Table vs Array

Software Development Methodologies at Optiver • Elements of – Agile – Scrum – Kanban

Software Development Methodologies at Optiver • Elements of – Agile – Scrum – Kanban – Extreme – Etc.

Theory: Have a Great Process • Methodologies are like a tradesperson’s tools • Don’t

Theory: Have a Great Process • Methodologies are like a tradesperson’s tools • Don’t leave home without them • But you can’t blindly rely on them • Lesson: Delivery is what matters!

Whither Methodologies? • Methodologies help us deal with: – Uncertainty – Change – Complexity

Whither Methodologies? • Methodologies help us deal with: – Uncertainty – Change – Complexity – Scale

Uncertainty • Of success • Of details • Lessons: – Don’t assume you know

Uncertainty • Of success • Of details • Lessons: – Don’t assume you know it all – You’ll write code twice, so plan to

Change • • Requirements change Our understanding changes People change Technology changes • Lesson:

Change • • Requirements change Our understanding changes People change Technology changes • Lesson: Don’t be surprised. Expect change!

Complexity • The 90/10 rule • The KISS principle • Complexity often becomes simple

Complexity • The 90/10 rule • The KISS principle • Complexity often becomes simple after you start • Lesson: Be roughly right, rather than precisely wrong

Scale •

Scale •

Some Tips and Hints

Some Tips and Hints

Be Incremental • Deliver functionality not components • Lesson: Keep it working

Be Incremental • Deliver functionality not components • Lesson: Keep it working

Work with Great People A study by Norm Augustine found that in a variety

Work with Great People A study by Norm Augustine found that in a variety of professions—writing, football, invention, police work, and other occupations —the top 20 percent of the people produced about 50 percent of the output, whether the output is touchdowns, patents, solved cases, or software. Steve Mc. Connell, 2008

In Conclusion • How to succeed: – – Know your theory Understand the why

In Conclusion • How to succeed: – – Know your theory Understand the why behind what you learn Learn from experience Don’t stop thinking (challenge everything) • Common sense isn’t all that common • The efficient markets hypothesis says that Optiver shouldn’t exist…

Life at Optiver

Life at Optiver

Graduates & Interns • Software Developers • FPGA Developers • System Reliability Engineers •

Graduates & Interns • Software Developers • FPGA Developers • System Reliability Engineers • Traders

Graduates & Interns • Visit www. optiver. com. au • Email us at careers@optiver.

Graduates & Interns • Visit www. optiver. com. au • Email us at care[email protected] com. au • Sydney roles open to Australian citizens / permanent residents and New Zealand citizens • Shanghai roles open to Chinese citizens

Meet us on Campus ASOC Careers Fair (March 6) UNSW Women in STEM (March

Meet us on Campus ASOC Careers Fair (March 6) UNSW Women in STEM (March 7) Careers Expo (March 7) CSESOC Tech Careers Networking Night (March 12) • Info Session @ UNSW (March 13) • CSESOC BBQ (March 27) • Computing Careers Expo (March 28) • •

Questions?

Questions?