R for Data Science/Analytics / Automation
Custom Projects course (R Data Science tutors in New York) Introduction to R Course Fee : $100 (Online Course) / $25/hr Onsite
R Tutors Data Science and R Classes also available in Downtown Manhattan New York @ $25/hour
Course is based on four text:
- R for Data Science- Import, Tidy, Transform, Visualize, and Model Data
- Machine Learning for Hackers
- Ggplot2 Elegant Graphics for Data Analysis
- R in a nutshell
Chicago events- https://www.eventbrite.com/e/data-analytics-101-bootcamp-excelvba-sql-python-at-325-tickets-96608906841
Links-
Learning R – R Programming for Data Science/Analytics/quant course New York – Live Instructor Based one on one course – Projects similar to what you do at your job!
Some learners say that they feel R is mix of MATLAB and SAS if I were to relate to the other 2 tools used in Finance. R is having mix of maths and data handling powers of SAS and given that it is open source it is the best choice for research. R is MATLAB when it comes to syntax. When it comes to data handling it uses R MySQL in the very same way as SAS does. Hence it does things that SAS+MATLAB do for free. SQL has inherent limitations of doing quant computations, and MATLAB is heave and requires too much resources. MATLAB is not very good to deal with SQL at system level. But to start with one needs to also know VBA as for entry level and easy task VBA is preferred.
Also, you would learn the application of R for quantitative finance.
Introduction to the R Programming for Data Science
- Some background on R, how to obtain and how to install it
- R documentation and available help and web resources
- R Console and R GUI
- Data import, data types and variables
- Elementary import functions
- Data types
- Variable generation, inspection and modification
- Graphics in R for Data Science
- Command “plot” and where to plot to
- Setting the setting: par
- High-level and low-level plotting functions legends
- Math in plots
- Hands-on Session—data handling & graphics
- Simulations in R for Data Analytics
- Simulating from given distributions
- Risk management basics
- Data Structures in R
- Review of types of objects
- Additional object types
- Basics of the R Language
- Conditionals & Loops
- Writing R Functions: Basic functions
- Object-orientation
- Debugging
- Application in Finance
- Calculating Value at Risk
- Packages for Portfolio Optimization
Divisions:
- 10 hours on handling data, functions, indexing, functions, structures, data linkages, importing, SQL, etc
- 10 hours on Financial Commands, tools, pre built libraries
Course Description:
One on One course Introductory course for R. 4 hours of basics of R to get you started in R. Flexible timings with personalized approach by Experienced Faculty. Online tests to prepare yourself better. This course will help you in:
- Add to the profile by learning R.
- Provides a base for learning advanced R.
- Gives you a perfect platform for launching a career in R.
- Gain the knowledge of integration with excel .
Course Structure:
Class No. |
Topic List: R for Data Science / Analytics |
Class duration |
1 |
Installing R, Intro to R packages, R as calculator |
1 hour |
2 |
Matrix in R, Indexing in R, Intro to ARIMA, Regression in R |
1 hour |
3 |
Connecting R with Excel, Importing CSV, Input methods, connecting R with external sources feeds like QuantDL |
1 hour |
4 |
Revision/Doubt Clearing |
1 hour |
The Benefits of Using R :
- R is free, open-source code
- R programming helps you runs R anywhere
- R supports extensions
- R provides an engaged community
- R connects with other languages
Tutorials contributed by learners and tutors-
Other Details –
Some links to get yourself acquainted on R:
http://www.unicom.co.uk/quant-finance/R-for-Finance.php
http://www.optirisk-systems.com/papers/FinancewithR.pdf
http://www.optirisk-systems.com/events/finance-with-r.asp
https://www.rmetrics.org/ebooks-basicr
http://www.r-bloggers.com/search/finance
http://www.rinfinance.com/RinFinance2009/presentations/ChicagoWuertz.pdf
http://blog.revolutionanalytics.com/2011/11/course-financial-data-modeling-and-analysis-in-r.html
http://braverock.com/brian/R/PerformanceAnalytics/html/PerformanceAnalytics-package.html
http://www.quantmod.com/documentation/00Index.html
http://tradeblotter.files.wordpress.com/2012/06/uw_r_seminar_may_2012.pdf
Functions of R / R Commands to be covered in the course:
Caution:
Always save workspace
Use “c” when you want to use it a signal in black schools formula
read.table function will be used to get the data into R (/\ used opposite than the one used in windows)
http://www.ats.ucla.edu/stat/r/faq/inputdata_R.htm
Example 1
> test.txt <- read.table (“C:/Documents and Settings/shivbhakta.joshi/My
Documents/test.txt”, header=T)
> print(test.txt)
> column <- test.txt[,c(‘make’,’price’)]
Example 2
grb <- read.table (“C:/Documents and Settings/shivbhakta.joshi/My
Documents/GRB_afterglow.dat”, header=T, skip=1)
x <- (grb[,1])
Grabbing data from tables into an single dimensional arrayx <- (grb[,1])
y <- log(grb[,1])
Another way to create returns for stock daily return is
f=dft$age/dft$price (using dollar sign extraction)
Deleting column http://www.sr.bham.ac.uk/~ajrs/R/r-manipulate_data.html
> add <- add[-2] to delete the element 2nd
Adding data to array busing column command
> add <- c(1,d)
Using Data frames
Data.frame is used to combine the arrays back into table format
people = data.frame (x,y)
Write.CSV command executed
write.csv(people,”filename.csv”)
grb <- read.table (“C:/Documents and Settings/satyadhar.joshi/My
Documents/GRB_afterglow.dat”, header=T, skip=1)
x <- (grb[,1])
y <- log(grb[,1])
people = data.frame (x,y)
write.csv(people,”filename.csv”)
These methods can be used to compute beta from columns of a csv file
Working formula of Blach Scholes
BS <-
function(S, K, T, r, sig, type=”C”){
d1 <- (log(S/K) + (r + sig^2/2)*T) / (sig*sqrt(T))
d2 <- d1 – sig*sqrt(T)
if(type==”C”){
value <- S*pnorm(d1) – K*exp(-r*T)*pnorm(d2)
}
if(type==”P”){
value <- K*exp(-r*T)*pnorm(-d2) – S*pnorm(-d1)
}
return(value)
}
blackscholes <- function(s, k, r=.1, t=5, sigma=.9,call=TRUE) {
#calculate call/put option
d1 <- (log(s/k)+(r+sigma^2/2)*t)/(sigma*sqrt(t))
d2 <- d1 – sigma * sqrt(t)
ifelse(call==TRUE,s*pnorm(d1) – k*exp(-r*t)*pnorm(d2),k*exp(-r*t)
* pnorm(-d2) – s*pnorm(-d1))
}
Predefined Black schools model:
http://shafik.net/~shafik/FinancialEngineering/Code/
black_scholes (“c”,5600,5600,.1,.08,.22 )
this depicts use of functions in R
Merton Distance to Default (different as per needs)
(modified from Black Scholes formula, still
unsure about pnorm() function)
d1 <- (log(s/k)+(sigma^2/2))/(sigma)
pnorm(d1)
3 files needed to run the demos are available on internet by various authors:
- black_scholes.R
- GRB_afterglow.dat
- test.txt
References:
http://heather.cs.ucdavis.edu/~matloff/132/NSPpart.pdf
# http://www.statmethods.net/advgraphs/axes.html
# http://www.inside-r.org/packages/cran/plotrix/docs/axis.break# Example 1
x <- c(9.45, 8.78, 0.93, 0.47, 0.24, 0.12)
y <- c(10.72, 10.56, 10.35, 10.10, 9.13, 6.72)
z <- c(7.578, 7.456, 6.956, 6.712, 4.832, 3.345)
plot(x, y, col=’blue’, pch=16, xlab= ‘x’, ylab=’y, z’)
points(x, z, col=’red’, pch=17)
library(plotrix)
axis.break(1,2,style=”slash”)#Break X axisxgap <- ifelse(x > 8, x-6, x)
#Possibly you’d want to check if there are values between 2 and 8.
plot(xgap, y, col=’blue’, pch=16, xlab= ‘x’, ylab=’y, z’, xaxt=”n”)
points(xgap, z, col=’red’, pch=17)
xat <- pretty(xgap)
xat <- xat[xat!=2]
xlab <- ifelse(xat>2, xat+6, xat)
axis(1,at=xat, labels=xlab)
library(plotrix)
axis.break(1,2,style=”slash”)library(plotrix)
par(bty=”n”) # deleting the box
gap.plot(x,y, gap=c(2,7.5), gap.axis=”x”, pch=16,
col=”blue”, ylim=range(c(y,z)),
xtics=c(0:3,8:10), xticlab=c(0:3,8:10))gap.plot(x,z, gap=c(2,7.5), gap.axis=”x”, pch=17,
col=”red”, ylim=range(c(y,z)), add=TRUE); axis(2)abline(v=seq(1.99,2.09,.001), col=”white”) # hiding vertical lines
axis.break(1,2,style=”slash”)
# Break Y Axis
ygap <- ifelse(y > 8, y-6, y)
#Possibly you’d want to check if there are values between 2 and 8.
plot(ygap, x, col=’blue’, pch=16, xlab= ‘x’, ylab=’y, z’, yaxt=”n”)
points(ygap, z, col=’red’, pch=17)
yat <- pretty(ygap)
yat <- yat[yat!=2]
ylab <- ifelse(yat>2, yat+6, yat)
axis(2,at=yat, labels=ylab)
library(plotrix)
axis.break(2,2,style=”slash”)
One on One Customized Training:
qcfinance.in believes in personalized touch so that our clients are completely satisfied with our service. In this regard, we offer One on One Customized Training to our clients.
These Training are provided on requests by our clients & are customized according to their individual needs at various cities.
Tutors and Volunteers available in Manhattan, New York.
The course structure & timings for these training are highly flexible, classes are scheduled as per the convenience of our clients.
R programming tutors in Manhattan New York for Data Science
Note: If you miss a scheduled one on one class, then don’t worry, you can reschedule it at your convenient time & the missed class won’t be counted. You may defer a class any number of time. Also, you get life time access to materials which gets constantly updated.
Course Instructor:
Contact Us: info@learnprogrammingnyc.com
Depreciated: COURSE LINK – Introduction to R
We have classes in these cities
- Milwaukee
- Chicago
- Colimbus
- Detroit