Book Image

F# for Quantitative Finance

By : Johan Astborg
Book Image

F# for Quantitative Finance

By: Johan Astborg

Overview of this book

F# is a functional programming language that allows you to write simple code for complex problems. Currently, it is most commonly used in the financial sector. Quantitative finance makes heavy use of mathematics to model various parts of finance in the real world. If you are interested in using F# for your day-to-day work or research in quantitative finance, this book is a must-have.This book will cover everything you need to know about using functional programming for quantitative finance. Using a functional programming language will enable you to concentrate more on the problem itself rather than implementation details. Tutorials and snippets are summarized into an automated trading system throughout the book.This book will introduce you to F#, using Visual Studio, and provide examples with functional programming and finance combined. The book also covers topics such as downloading, visualizing and calculating statistics from data. F# is a first class programming language for the financial domain.
Table of Contents (17 chapters)
F# for Quantitative Finance
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Composing interfaces


Now, we have looked at the first code to generate a form and composed a very simple interface consisting of a button. As you may have noticed, F# has no visual designer as present in the other .NET languages. There are several ways of composing interfaces in F#:

  • Writing interface code manually

  • Using the C# visual designer and converting the code into F#

  • Building a library using other .NET language and using it from F#

  • Building your own visual designer to output F# code

In this book, we will mainly use the first alternative—writing interface code manually. This may seem tedious, but the upside is total control over the layout. We'll now look at a larger example using an agent to keep track of the highest number and a user interface with a button. When a user clicks on that button, a random number is sent to the agent (see the following screenshot). The agent then outputs the highest number every second. Also, the example illustrates the use of namespaces and modules in a realistic...