Setting u p a strateg y I FIN AN C IAL TR AD IN G IN R Il y a - - PowerPoint PPT Presentation

setting u p a strateg y i
SMART_READER_LITE
LIVE PREVIEW

Setting u p a strateg y I FIN AN C IAL TR AD IN G IN R Il y a - - PowerPoint PPT Presentation

Setting u p a strateg y I FIN AN C IAL TR AD IN G IN R Il y a Kipnis Professional Q u antitati v e Anal y st and R programmer Three important dates Q u antstrat needs an initDate , a from date , and a to date . YYYY - MM - DD , eg


slide-1
SLIDE 1

Setting up a strategy I

FIN AN C IAL TR AD IN G IN R

Ilya Kipnis

Professional Quantitative Analyst and R programmer

slide-2
SLIDE 2

FINANCIAL TRADING IN R

Three important dates

Quantstrat needs an initDate, a from date, and a to date. YYYY-MM-DD, eg “2000-01-01”

initdate <- "1999-01-01" from <- "2003-01-01" to <- "2015-12-31"

slide-3
SLIDE 3

FINANCIAL TRADING IN R

Setting up quantstrat

# Set system environment timezone: Sys.setenv(TZ = "UTC") # Set currency (we’ll use USD for now): currency("USD") # Obtain financial data: getSymbols("LQD", from = from, to = to, src = "yahoo", adjust = TRUE) # Treat as basic equity stock("LQD", currency = "USD", multiplier = 1)

slide-4
SLIDE 4

FINANCIAL TRADING IN R

Overview

initDate = "1999-01-01" from = "2003-01-01" to = “2015-12-31" Sys.setenv(TZ = "UTC") currency("USD") getSymbols("LQD", from = from, to = to, src = "yahoo", adjust = TRUE)

slide-5
SLIDE 5

Let's practice!

FIN AN C IAL TR AD IN G IN R

slide-6
SLIDE 6

Setting up a strategy II

FIN AN C IAL TR AD IN G IN R

Ilya Kipnis

Professional Quantitative Analyst and R programmer

slide-7
SLIDE 7

FINANCIAL TRADING IN R

Trade size and initial equity

In order to work with returns, you need to dene trade size and initial equity to calculate prot and loss

tradesize <- 100000 initeq <- 100000

tradesize should not be more than initeq

slide-8
SLIDE 8

FINANCIAL TRADING IN R

Three important objects

Account Portfolio Strategy

slide-9
SLIDE 9

FINANCIAL TRADING IN R

Naming account, portfolio, and strategy

Naming the account, portfolio, and strategy all the same name suces for basic strategies

strategy.st <- portfolio.st <- account.st <- "firststrat"

slide-10
SLIDE 10

FINANCIAL TRADING IN R

Removing existing strategy

If you ran the strategy already, you need to remove it from your environment

rm.strat(strategy.st)

slide-11
SLIDE 11

FINANCIAL TRADING IN R

Initialize…

Portfolio Account Orders Strategy

slide-12
SLIDE 12

FINANCIAL TRADING IN R

Initializing portfolio

Portfolio initialization is called with initPortf()

initPortf() requires portfolio name, symbols, initialization

date, and currency

initPortf(portfolio.st, symbols = "LQD", initDate = initdate, currency = "USD")

slide-13
SLIDE 13

FINANCIAL TRADING IN R

Initializing account

Account initialization is called with initAcct()

initAcct() requires account name, portfolios, initialization

date, currency, and initial equity

initAcct(account.st, portfolios = portfolio.st, initDate = initdate, currency = "USD", initEq = initeq)

slide-14
SLIDE 14

FINANCIAL TRADING IN R

Initializing orders

Order initialization is called with initOrders()

initOrders() requires portfolio name and initialization date initOrders(portfolio.st, initDate = initdate)

slide-15
SLIDE 15

FINANCIAL TRADING IN R

Initializing strategy

Strategy initialization is called with strategy()

strategy(strategy.st, store = TRUE)

slide-16
SLIDE 16

FINANCIAL TRADING IN R

Overview

tradesize <- 100000 initeq <- 100000 strategy.st <- portfolio.st <- account.st <- "firststrat" rm.strat(strategy.st) initPortf(portfolio.st, symbols = "LQD", initDate = initdate, currency = "USD") initAcct(account.st, portfolios = portfolio.st, initDate = initdate, currency = "USD", initEq = initeq) initOrders(portfolio.st, initDate = initdate) strategy(strategy.st, store = TRUE)

slide-17
SLIDE 17

Let's practice!

FIN AN C IAL TR AD IN G IN R