Why you should buy SEL. The Stock Exchange Language Alexander Golec (akg2136) Dan Mechanic (dm2474) Eric Powders (ejp2127) Nisha Ranga (nr2399) Noah Stephens-Davidowitz (nhs2121)
Download ReportTranscript Why you should buy SEL. The Stock Exchange Language Alexander Golec (akg2136) Dan Mechanic (dm2474) Eric Powders (ejp2127) Nisha Ranga (nr2399) Noah Stephens-Davidowitz (nhs2121)
Why you should buy SEL.
The Stock Exchange Language
Alexander Golec (akg2136) Dan Mechanic (dm2474) Eric Powders (ejp2127) Nisha Ranga (nr2399) Noah Stephens-Davidowitz (nhs2121)
SEL - Motivations • "As of 2009, [High Frequency Trading] firms account for 73% of all US equity trading volume. " o Rob Lati, The Real Story of Trading Software Espionage
AdvancedTrading.com
, July 10, 2009 • Proprietary trading firms use their own specialized languages to program their trading systems.
• SEL makes the power of these systems available to anyone.
SEL - Language Features • A language to facilitate the development and implementation of trading strategies.
• Stream abstraction does away with the need to write input handling code.
• Checking for market conditions is handled automatically.
• Standard input format means simple adapters can be used to process a variety of input formats.
What we are presenting today • Development Methodology • Compiler and Runtime Architecture • Testing methodology • Demonstration
SEL - Development Methodology • Agile; similar to Continuous Integration o Start with a skeleton, dummy code where necessary o o o Commit Early, Commit Often Only commit buildable code Test, test, test o Refactor, refactor, refactor • • • • Flexible Roles Meet often (twice-weekly) Use Mercurial for centralized code versioning Build against a single, standardized development platform
SEL
SEL - Architecture
SEL - Testing • Python Test framework - Automated testing • Comprehensive test suite o o o 355 SEL compiler tests 132 target code compilation tests 4 execution tests • Results based on SEL and g++ return codes and expected program output.
• Testing developed as the language developed....
new features = testbed expanded
SEL - Testing
SEL- In Action
SEL- In Action