아래수식은 월간옵션 거래일 수식입니다.
만기기준일 0 은 만기일만 거래하게 됩니다.
*요청내용
from ~ to 개념의 수식을 요청드립니다.
input : 만기기준일(7), 만기기준일(0);
만기 7일전부터 만기일까지 사이의 날짜들을 거래하는 수식입니다.
만기기준일 7일 목요일
만기기준일 6일 금요일
만기기준일 5일 (토요일)
만기기준일 4일 (일요일)
만기기준일 3일 월요일
만기기준일 2일 화요일
만기기준일 1일 수요일
만기기준일 0일 목요일(월물 만기일)
항상 고맙습니다.
*************************************************************************
input:만기기준일(0);
Var : Year(0),Month(0),ndate1(0),ndate2(0);
var : cnt(0),count1(0),count2(0);
var : XD1(0),XD2(0),Xdate(0),remain(0);
Year = Floor(sDate / 10000)*10000;
month = Floor(FracPortion(sdate/10000)*100)*100;
ndate1 = year+month+1;
if Month+100 <= 1200 Then
ndate2 = year+(month+100)+1;
Else
ndate2 = (year+10000)+100+1;
count1 = 0;
count2 = 0;
for cnt = 0 to 15
{
if dayofweek(ndate1+cnt) == 4 Then
{
count1 = count1+1;
if count1 == 2 Then
{
XD1 = ndate1+cnt;
}
}
if dayofweek(ndate2+cnt) == 4 Then
{
count2 = count2+1;
if count2 == 2 Then
{
XD2 = nDate2+cnt;
}
}
}
if sDate <= XD1 Then
{
Xdate = XD1;
}
Else
{
Xdate = XD2;
}
if Xdate > 0 Then
{
remain = DateToJulian(Xdate)-DateToJulian(sDate);
}
if remain == 만기기준일 then
{
거래수식
}
답변 1
예스스탁
예스스탁 답변
2024-01-19 15:58:35
안녕하세요
예스스탁입니다.
조건식만 아래와 같이 변경하시면 됩니다.
잔존일 7일이내만 신호가 발생합니다.
if remain <= 7 and remain >= 0 then
{
거래수식
}
즐거운 하루되세요
> 목마와숙녀 님이 쓴 글입니다.
> 제목 : 문의
> 아래수식은 월간옵션 거래일 수식입니다.
만기기준일 0 은 만기일만 거래하게 됩니다.
*요청내용
from ~ to 개념의 수식을 요청드립니다.
input : 만기기준일(7), 만기기준일(0);
만기 7일전부터 만기일까지 사이의 날짜들을 거래하는 수식입니다.
만기기준일 7일 목요일
만기기준일 6일 금요일
만기기준일 5일 (토요일)
만기기준일 4일 (일요일)
만기기준일 3일 월요일
만기기준일 2일 화요일
만기기준일 1일 수요일
만기기준일 0일 목요일(월물 만기일)
항상 고맙습니다.
*************************************************************************
input:만기기준일(0);
Var : Year(0),Month(0),ndate1(0),ndate2(0);
var : cnt(0),count1(0),count2(0);
var : XD1(0),XD2(0),Xdate(0),remain(0);
Year = Floor(sDate / 10000)*10000;
month = Floor(FracPortion(sdate/10000)*100)*100;
ndate1 = year+month+1;
if Month+100 <= 1200 Then
ndate2 = year+(month+100)+1;
Else
ndate2 = (year+10000)+100+1;
count1 = 0;
count2 = 0;
for cnt = 0 to 15
{
if dayofweek(ndate1+cnt) == 4 Then
{
count1 = count1+1;
if count1 == 2 Then
{
XD1 = ndate1+cnt;
}
}
if dayofweek(ndate2+cnt) == 4 Then
{
count2 = count2+1;
if count2 == 2 Then
{
XD2 = nDate2+cnt;
}
}
}
if sDate <= XD1 Then
{
Xdate = XD1;
}
Else
{
Xdate = XD2;
}
if Xdate > 0 Then
{
remain = DateToJulian(Xdate)-DateToJulian(sDate);
}
if remain == 만기기준일 then
{
거래수식
}