r语言 - 写一个if-else函数,返回2个值



我正在使用下面的函数,基本上会返回delta和gamma值,我可以知道calldelta&calleval,putdelta&puteval,我如何使用操作符连接两个返回值在一起?试过&,没有运气。非常感谢您的关注。

library(optionstrat)
library(quantmod)


x=160
sigma=0.25
t=0.25
r=0.05
delta<-function(option_type,stock_price)
{ 
if (option_type=="c")
calldelta(s,x,sigma,t,r)
calleval(s,x,sigma,t,r)$Gamma
else
putdelta(s,x,sigma,t,r)
puteval(s,x,sigma,t,r)$Gamma
}

看起来calldelta和calleval分别是函数,不确定这些函数返回的是什么(值或数据帧)。但是,将值存储在变量:

delta <- function(option_type,stock_price) { 
if (option_type=="c") {
v1 <- calldelta(s,x,sigma,t,r)
v2 <- calleval(s,x,sigma,t,r)$Gamma
print(paste0(v1, ' and ', v2), collapse=NULL)
} else {
v3 <-  putdelta(s,x,sigma,t,r)
v4 <-  puteval(s,x,sigma,t,r)$Gamma
print(paste0(v3, ' and ', v4), collapse=NULL)
}

}

相关内容

最新更新