この関数を実行しようとしましたが、if ステートメントでエラーが発生し続けました: if (value[1][i] < 0) { のエラー: TRUE/FALSE が必要な場所に値がありません:
Monte_Carlo <- function(trial)
{
S_T <- S_o*exp((r - q - (1/2)*sigma^2)*period + sigma*rnorm(trial, mean = 0, sd = 1))
K <- matrix(100, nrow = 1, ncol = 20)
value <- K - S_T
for(i in 1:trial)
{
if(value[1][i] < 0)
{
value[1][i] = 0;
}
}
return (mean(value)*exp(-r))
}