极简主义shiny app
来源:互联网 发布:2014年最火的网络歌曲 编辑:程序博客网 时间:2024/04/29 07:23
转载自:http://site.douban.com/182577/widget/notes/10568279/note/349413814/
为了上课,赶制了一个异常简单的shiny app。展示二项树期权的定价。
贴在这里,立此存照。等着以后有时间慢慢把它做漂亮。。。
1.二项树期权
用fOptions包的BinomialTreeOption()计算期权价格;用BinomialTreePlot()展示期权价格二项树。
2.shiny
# ui.R
library(shiny)
shinyUI(pageWithSidebar(
headerPanel("Option types and Parameters"),
sidebarPanel(
selectInput(inputId = "comboBox",
label = "TypeFlag",choices = list(" European call option" = "ce", "European put option" = "pe", "American call option" = "ca","American put option" = "pa")),
numericInput(inputId = "pickNumber",
label = "Time",
min = 0, max = 10, value = 1),
numericInput(inputId = "pickNumber",
label = "Sigma",
min = 0, max = 1, value = .1),
numericInput(inputId = "pickNumber",
label = "r",
min = 0, max = 1, value = .1),
numericInput(inputId = "pickNumber",
label = "S",
min = 0, max = 10000, value = 1),
numericInput(inputId = "pickNumber",
label = "X",
min = 0, max = 10000, value = 1),
sliderInput(inputId = "slider",
label = "n",
min = 1, max = 10, value = 2, step = 1),
),
mainPanel(
h3("CRR Binomial Tree Option"),
plotOutput("plotDisplay")
)
))
#server.r
library(shiny)
library(fOptions)
shinyServer(function(input, output) {
output$plotDisplay <- renderPlot({
crr<-BinomialTreeOption(TypeFlag = input$comboBox,S=input$pickNumber4, X=input$pickNumber5,
Time=input$pickNumber1, r=input$pickNumber3, b=0, sigma=input$pickNumber2,
n=input$slider)
print(BinomialTreePlot(crr, dx = 0.05, dy = 0.2,
cex = 1, digits = 2,ylim=c(-input$slider-1,input$slider+1)))
})
})
把ui.r和serve.r各自保存为文件,放入同一个文件夹中/rresult。设置路径:
setwd('~/rresult')
运行:
runApp()
就可以看到所作的shiny应用了。
贴在这里,立此存照。等着以后有时间慢慢把它做漂亮。。。
1.二项树期权
用fOptions包的BinomialTreeOption()计算期权价格;用BinomialTreePlot()展示期权价格二项树。
2.shiny
# ui.R
library(shiny)
shinyUI(pageWithSidebar(
headerPanel("Option types and Parameters"),
sidebarPanel(
selectInput(inputId = "comboBox",
label = "TypeFlag",choices = list(" European call option" = "ce", "European put option" = "pe", "American call option" = "ca","American put option" = "pa")),
numericInput(inputId = "pickNumber",
label = "Time",
min = 0, max = 10, value = 1),
numericInput(inputId = "pickNumber",
label = "Sigma",
min = 0, max = 1, value = .1),
numericInput(inputId = "pickNumber",
label = "r",
min = 0, max = 1, value = .1),
numericInput(inputId = "pickNumber",
label = "S",
min = 0, max = 10000, value = 1),
numericInput(inputId = "pickNumber",
label = "X",
min = 0, max = 10000, value = 1),
sliderInput(inputId = "slider",
label = "n",
min = 1, max = 10, value = 2, step = 1),
),
mainPanel(
h3("CRR Binomial Tree Option"),
plotOutput("plotDisplay")
)
))
#server.r
library(shiny)
library(fOptions)
shinyServer(function(input, output) {
output$plotDisplay <- renderPlot({
crr<-BinomialTreeOption(TypeFlag = input$comboBox,S=input$pickNumber4, X=input$pickNumber5,
Time=input$pickNumber1, r=input$pickNumber3, b=0, sigma=input$pickNumber2,
n=input$slider)
print(BinomialTreePlot(crr, dx = 0.05, dy = 0.2,
cex = 1, digits = 2,ylim=c(-input$slider-1,input$slider+1)))
})
})
把ui.r和serve.r各自保存为文件,放入同一个文件夹中/rresult。设置路径:
setwd('~/rresult')
运行:
runApp()
就可以看到所作的shiny应用了。
0 0
- 极简主义shiny app
- 一款基于手势的极简主义风格App:Haze
- 极简主义生活方式
- 极简主义生活方式
- 极简主义生活方式
- 浅谈极简主义设计
- 到底什么是极简主义?
- 极简主义与拿来主义
- 【Shiny】基于R-Shiny制作地图App(百度地图)
- 使用CSS美化shiny app效果
- R极简教程-13:交互式网站Shiny框架
- 网页设计的极简主义:少即是多
- 人民日报推荐:极简主义生活方式
- (10.1.6)极简主义
- 极简主义笔记与提炼
- Javascript极简主义法定义类
- 【Typical】几道题的极简主义题解
- Packaging your Shiny App as an Windows desktop app
- 【C++】【学习笔记】【005】输入输出小结
- muduo源码分析--多线程模型适用场合
- OpenStack的学习路线
- hdu 2639 01背包第k优解
- 苹果自带拼音转换方法
- 极简主义shiny app
- http相应头和请求头
- "man xxx"
- DirectX中的向量
- 版本 Version, Release, Build 和 Edition 之间的区别
- servlet中压缩数据和下载图片
- Sicily 1232. Electrical Outlets
- 大数据的可视化:bigvis包的简单尝试
- Sicily 1491 Look and Say