-
Notifications
You must be signed in to change notification settings - Fork 3
/
ui.R
138 lines (85 loc) · 3.84 KB
/
ui.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
library(shiny)
# Define UI for slider demo application
shinyUI(pageWithSidebar(
# Application title
headerPanel("Apple Option Prices!"),
# Sidebar with sliders that demonstrate various available options
sidebarPanel(
# Simple integer interval
# sliderInput("integer", "Integer:",
# min=0, max=1000, value=500),
# Decimal interval with step value
#sliderInput("decimal", "Decimal:",
# min = 0, max = 1, value = 0.5, step= 0.1),
# Specification of range within an interval
#sliderInput("range", "Range:",
# min = 1, max = 1000, value = c(200,500)),
# Provide a custom currency format for value display, with basic animation
#sliderInput("format", "Custom Format:",
# min = 0, max = 10000, value = 0, step = 2500,
# format="$#,##0", locale="us", animate=TRUE),
# Animation with custom interval (in ms) to control speed, plus looping
#sliderInput("animation", "Looping Animation:", 1, 2000, 1, step = 10,
# animate=animationOptions(interval=300, loop=TRUE))
selectInput(inputId = "type",
label = "Option type",
choices = c("All", "Puts", "Calls" ),
selected = "All" ),
htmlOutput("simple")
),
# Show a table summarizing the values entered
mainPanel(
tabsetPanel(
tabPanel("Option Prices",
h3("Prices."),
plotOutput("prices")
),
tabPanel("Implied Volatility",
h3("Vola."),
plotOutput("vola")
),
tabPanel("Probability",
h3("Prob."),
plotOutput("prob")
),
tabPanel("Changed Prices",
# h3("Current Prices."),
#plotOutput("prices"),
h3("Given a stock price in +5 days plot the future option prices (using Black Scholes)"),
sliderInput("decimal", "Future Stock Price:",
min = 350, max = 500, value = 430, step= 1),
plotOutput("changedPrices")
# h3("Given a stock prices in +5 days (plot Differences):")
# plotOutput("differences")
),
tabPanel("Profit Calculation",
# h3("Current Prices."),
#plotOutput("prices"),
selectInput(inputId = "dtype",
label = "Display",
choices = c("New Option Prices", "Absolute Profit", "Relative Profit" ),
selected = "New Option Prices" ),
h3("Given a stock price in +5 days we can plot the future option prices (using Black Scholes), calculate the absolute/relative performance for buying any option now and selling it in 5 days."),
sliderInput("decimal2", "Future Stock Price:",
min = 350, max = 500, value = 430, step= 1),
plotOutput("differences")
# h3("Given a stock price in +5 days (plot Differences):")
# plotOutput("differences")
),
tabPanel("PERT",
h3("PERT method, estimate a beta-distribution from triangle"),
sliderInput("min", "Min:",
min = 350, max = 500, value = 420, step= 1),
sliderInput("ml", "Most likely:",
min = 350, max = 500, value = 430, step= 1),
sliderInput("max", "Max:",
min = 350, max = 500, value = 460, step= 1),
plotOutput("PERT"),
h3("Parameter Estimates for beta distribution:"),
tableOutput("PERTpara"),
h3("Given the PERT distribution... calculate relative profit."),
plotOutput("joint")
)
)
)
))