callPayoff <- function(S,E) payoff <- pmax(S-E,0)

BandH <- function(S) {
  Call29 <- callPayoff(S,29)
  Call32 <- callPayoff(S,32)
  21*(Call29 - 1.9) + 21*(-Call32 + 0.6)
}

tomanetrapi <- function(S){
  call1<-callPayoff(S,28)
  call2<-callPayoff(S,32)
  payoff<- 47*call1-41*call2
  profit<-payoff-47*2.6+41*0.55
  profit
}

GJH <- function(S){
  call29<-callPayoff(S,29)
  call32<-callPayoff(S,32)
  74*(call29 - 1.9 - call32 + 0.55)
}

PaDo <- function(S){
  profit <- 48 * (callPayoff(S,28) - callPayoff(S,32) - 2.6 + 0.55)
  return(profit)
}

ihnatova_jankechova <- function(S){
  call1 <- callPayoff(S,28.0)  # 1 ITM , kupa
  call2 <- 2*callPayoff(S,31)  # 2ATM, predaj
  call3 <- callPayoff(S,32)   # 1 OTM kupa
  payoff <- call1-call2+call3
  profit <- payoff-2.60+2*0.85-0.60
  profit
}

IgHaFa <- function(S){
  call1<-callPayoff(S,28)
  call2<-callPayoff(S,28.5)
  call3<-callPayoff(S,29)
  call4<-callPayoff(S,29.5)
  call5<-callPayoff(S,30)
  call6<-callPayoff(S,30.5)
  call7<-callPayoff(S,31)
  call8<-callPayoff(S,31.50)
  call9<-callPayoff(S,32)
  payoff2 <- 200*call3 - 400*call6 + 200*call9
  profit2 <- payoff2 - (200*1.9-400*1+200*0.6)
  profit2
}

velmi.kreativny.nick <- function(S){
  c28 <- callPayoff(S,28)
  c29 <- callPayoff(S,29)
  124*(c28 - 2.6) - 124*(c29 - 1.8)
}


KOLIKA <- function(S)
{
  ex <- c(28,28.5,29,29.5,30,30.5,31,31.5,32)
  bid <- c(2.35,2.05,1.8,1.5,1.2,1,0.85,0.7,0.55)
  ask <- c(2.6,2.25,1.9,1.65,1.35,1.15,0.9,0.8,0.6)
  d<- length(ex)
  k1 <- d
  k2 <- 2
  p1 <- d-1
  p2 <- 3
  
  call1<-callPayoff(S,ex[k1])
  call2<-callPayoff(S,ex[p1])
  call3<-callPayoff(S,ex[p2])
  call4<-callPayoff(S,ex[k2])
  285*((call1-ask[k1])+(-call2+bid[p1])+(-call3+bid[p2])+(call4-ask[k2]))
}


Samo.Matus <- function(S)
{
  call1<-callPayoff(S,28)
  call3<-callPayoff(S,29)
  125*(call1-2.6)-125*(call3-1.8)
}


michaela.pestova <- function(S){
  
  call28<-callPayoff(S,28)        #ask 2.60 bid 2.35
  call28.50<-callPayoff(S,28.50)  #ask 2.25 bid 2.05
  call29<-callPayoff(S,29)        #ask 1.90 bid 1.80
  call29.50<-callPayoff(S,29.50)  #ask 1.65 bid 1.50
  call30<-callPayoff(S,30)        #ask 1.35 bid 1.20
  call30.50<-callPayoff(S,30.50)  #ask 1.15 bid 0.75
  call31<-callPayoff(S,31)        #ask 0.90 bid 0.85
  call31.50<-callPayoff(S,31.50)  #ask 0.80 bid 0.70
  call32<-callPayoff(S,32)        #ask 0.60 bid 0.55
  
  payoff <- 120*(call28-2*call30+call32)
  profit1 <- payoff-120*(2.60-2*1.2+0.60)
  profit1
}

Sosovicka.Hrdina.Gasper <- function(S) {
  call1 <- callPayoff(S,28.5)
  call2 <- callPayoff(S,29)
  payoff <- 222*call1 - 222*call2
  profit <- payoff - 222*2.25 + 222*1.8
  profit
}


Strategia777 <- function(S){
  call1<-callPayoff(S,28)
  call2<-callPayoff(S,28.5)
  call3<-callPayoff(S,31.5)
  call4<-callPayoff(S,32)
  payoff <- 5*call1-5*call2-5*call3+5*call4
  profit <- payoff+5*(-2.60)+5*2.05+5*0.70+5*(-0.60)
  profit
}



nevajda.machackova <- function(S){
  call1 <- callPayoff(S,28.5)
  call2 <- callPayoff(S,28)
  call3 <- callPayoff(S,31)
  call4 <- callPayoff(S,32)
  payoff <- -call1-call2+2*call3+2*call4
  profit <- payoff+2.05+2.35-2*0.9-2*0.6
  profit
}

lama <- function(S){
  call1<-callPayoff(S,28)
  call2<-callPayoff(S,32)
  22*(call1-2.60)-5*(call2-0.55)
}

Scherer <- function(S){
  call1<-callPayoff(S,28)
  call2<-callPayoff(S,32)
  45*(call1-2.60)-45*(call2-0.55)
}


S.final <- 28.16
BandH(S.final)
## [1] -27.3
tomanetrapi(S.final)
## [1] -92.13
PaDo(S.final)
## [1] -90.72
ihnatova_jankechova(S.final)
## [1] -1.34
IgHaFa(S.final)
## [1] -100
velmi.kreativny.nick(S.final)
## [1] -79.36
KOLIKA(S.final)
## [1] -99.75
Samo.Matus(S.final)
## [1] -80
michaela.pestova(S.final)
## [1] -76.8
Sosovicka.Hrdina.Gasper(S.final)
## [1] -99.9
Strategia777(S.final)
## [1] -1.45
nevajda.machackova(S.final)
## [1] 1.24
lama(S.final)
## [1] -50.93
Scherer(S.final)
## [1] -85.05