Advertisement
Advertisement

More Related Content

Advertisement

Recently uploaded(20)

Advertisement

F# in Finance Tour

  1. F# IN FINANCE TOUR Phillip Trelford Trayport Ltd F# in Finance 2013
  2. F#UNCTIONAL LONDONERS Founded Feb 2010 600+ Members 50+ Meetups 3 Conferences Topics     Finance Machine Learning Reactive Programming Functional Programming
  3. F# GROUPS WORLDWIDE
  4. SECTORS Prop shops Hedge funds Investment Banks Utilities Insurance
  5. TIME TO MARKET We are using F# because it considerably increases speed of software development which is crucial for a small company with limited development resources. Boston-based Financial Services Firm
  6. EFFICIENCY F# … to reduce the amount of code required and its simplicity when developing massive parallel computations. The performance is phenomenal. We can now re-calculate the entire bank portfolio from scratch in less than a second Handelsbanken
  7. CORRECTNESS The efficient use of functional programming throughout the R&D cycle helped make the cycle faster and more efficient. Less time was spent on translating requirements, miscommunications etc. and more on producing a fast and accurate solution quickly. CME Group
  8. COMPLEXITY We have set up a complete risk management system that combines several data sources… When the calculation requires a proper algorithm (i.e. anything that is more complex than a simple for loop), our choice has been F#. London-Based Asset Management Company
  9. TRAYPORT JOULE
  10. SPECIFICATIONS WITH TICKSPEC
  11. CURRENCY CONVERSIONS [<Measure>] type EUR [<Measure>] type GBP let rateEurGbp = 0.783M<GBP/EUR> // Converts amount in EUR to GBP let euroToPounds (eur:decimal<EUR>) = eur * rateEurGbp
  12. OPTION PRICING let euroCallValue exercisePrice actualPrice = max (actualPrice - exercisePrice) 0.0 let euroPutValue exercisePrice actualPrice = max (exercisePrice - actualPrice) 0.0 let butterflySpread lowPrice highPrice actualPrice = (euroCallValue lowPrice actualPrice) + (euroCallValue highPrice actualPrice) 2.0 * (euroCallValue ((lowPrice + highPrice) / 2.0) actualPrice)
  13. R – TYPE PROVIDER
  14. ORDERS – RECORD TYPES F# type LimitOrder = { LimitPrice : decimal Quantity : int Side : Side } C#
  15. TIME IN FORCE – UNION TYPE type TimeInForce = | GoodTillCancel | GoodForDay | GoodTillDate of DateTime
  16. UNITS IN CELLS type UnitType = | Empty | Unit of string * int | CompositeUnit of UnitType list
  17. TRAINING Phillip Trelford Trayport Ltd F# in Finance 2013
  18. SKILLS MATTER Training Fast Track to F# 2 days (quarterly) Tutorials F# Tutorials (London & NYC) 2 days (annually)
  19. F# KOANS [<Koan>] let SquareEvenNumbersWithPipelineOperator() = (* In F#, you can use the pipeline operator to get the benefit of the parens style with the readability of the statement style. *) let result = [0..5] |> List.filter isEven |> List.map square AssertEquality result __
  20. TRYFSHARP.ORG - FINANCE
  21. F# JOB DEMAND - UK Source: IT Jobs Watch Nov 2013
  22. Phillip Trelford Trayport Ltd F# in Finance 2013

Editor's Notes

  1. Fsharp.org map
  2. Putting it all together: http://www.trayport.com/en/joule/video
Advertisement