예스스탁
예스스탁 답변
2021-12-29 13:27:06
안녕하세요
예스스탁입니다.
1
참조데이타의 적용할 경우에는 마우스로 끌어 가져갈 plot지표가 필요해서 시초가를 추가했습니다.
2
옵션값 환산은 가능하지 않습니다.
조건만족시 기본차트의 종가에도 수평이 그려지게 추가해 드립니다.
3
각 옵션 등가별로 별도영역으로 겹쳐 있으면 아래식 데이타쌍별로 모두 분리해서 작성해주셔야 합니다.
하나의 영역에 겹쳐 있으면 아래식을 하나의 지표로 작성해서 적용하시면 됩니다.
4
#Data2-Data12
input : D2_D12_굵기(1),D2_D12_색상(GREEN);
var : D2_D12_V1(0,Data1),D2_D12_V2(0,Data1),D2_D12_OO(0,Data1);
var : D2_D12_sumDO(0,Data1),D2_D12_sumC(0,Data1),D2_D12_diff(0,Data1);
var : D2_D12_TL1(0,Data1),D2_D12_TL2(0,Data1),D2_D12_mid(0,Data1);
D2_D12_V1 = Data2(c);
D2_D12_V2 = Data12(c);
D2_D12_OO = Data2(OpenD(0));
if CrossUp(D2_D12_V1, D2_D12_V2) or CrossDown(D2_D12_V1, D2_D12_V2) Then
{
D2_D12_mid = (D2_D12_V1+D2_D12_V2)/2;
TL_Delete(D2_D12_TL1);
TL_Delete(D2_D12_TL2);
D2_D12_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D2_D12_TL2 = TL_New_Self(sDate,sTime,D2_D12_mid,NextBarSdate,NextBarStime,D2_D12_mid);
TL_SetSize(D2_D12_TL1, D2_D12_굵기);
TL_SetSize(D2_D12_TL2, D2_D12_굵기);
TL_SetColor(D2_D12_TL1, D2_D12_색상);
TL_SetColor(D2_D12_TL2, D2_D12_색상);
TL_SetExtRight(D2_D12_TL1, true);
TL_SetExtRight(D2_D12_TL2, true);
}
Plot1(D2_D12_OO);
#Data3-Data13
input : D3_D13_굵기(1),D3_D13_색상(GREEN);
var : D3_D13_V1(0,Data1),D3_D13_V2(0,Data1),D3_D13_OO(0,Data1);
var : D3_D13_sumDO(0,Data1),D3_D13_sumC(0,Data1),D3_D13_diff(0,Data1);
var : D3_D13_TL1(0,Data1),D3_D13_TL2(0,Data1),D3_D13_mid(0,Data1);
D3_D13_V1 = Data3(c);
D3_D13_V2 = Data13(c);
D3_D13_OO = Data3(OpenD(0));
if CrossUp(D3_D13_V1, D3_D13_V2) or CrossDown(D3_D13_V1, D3_D13_V2) Then
{
D3_D13_mid = (D3_D13_V1+D3_D13_V2)/2;
TL_Delete(D3_D13_TL1);
TL_Delete(D3_D13_TL2);
D3_D13_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D3_D13_TL2 = TL_New_Self(sDate,sTime,D3_D13_mid,NextBarSdate,NextBarStime,D3_D13_mid);
TL_SetSize(D3_D13_TL1, D3_D13_굵기);
TL_SetSize(D3_D13_TL2, D3_D13_굵기);
TL_SetColor(D3_D13_TL1, D3_D13_색상);
TL_SetColor(D3_D13_TL2, D3_D13_색상);
TL_SetExtRight(D3_D13_TL1, true);
TL_SetExtRight(D3_D13_TL2, true);
}
Plot2(D3_D13_OO);
#Data4-Data14
input : D4_D14_굵기(1),D4_D14_색상(GREEN);
var : D4_D14_V1(0,Data1),D4_D14_V2(0,Data1),D4_D14_OO(0,Data1);
var : D4_D14_sumDO(0,Data1),D4_D14_sumC(0,Data1),D4_D14_diff(0,Data1);
var : D4_D14_TL1(0,Data1),D4_D14_TL2(0,Data1),D4_D14_mid(0,Data1);
D4_D14_V1 = Data4(c);
D4_D14_V2 = Data14(c);
D4_D14_OO = Data4(OpenD(0));
if CrossUp(D4_D14_V1, D4_D14_V2) or CrossDown(D4_D14_V1, D4_D14_V2) Then
{
D4_D14_mid = (D4_D14_V1+D4_D14_V2)/2;
TL_Delete(D4_D14_TL1);
TL_Delete(D4_D14_TL2);
D4_D14_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D4_D14_TL2 = TL_New_Self(sDate,sTime,D4_D14_mid,NextBarSdate,NextBarStime,D4_D14_mid);
TL_SetSize(D4_D14_TL1, D4_D14_굵기);
TL_SetSize(D4_D14_TL2, D4_D14_굵기);
TL_SetColor(D4_D14_TL1, D4_D14_색상);
TL_SetColor(D4_D14_TL2, D4_D14_색상);
TL_SetExtRight(D4_D14_TL1, true);
TL_SetExtRight(D4_D14_TL2, true);
}
Plot3(D4_D14_OO);
#Data5-Data15
input : D5_D15_굵기(1),D5_D15_색상(GREEN);
var : D5_D15_V1(0,Data1),D5_D15_V2(0,Data1),D5_D15_OO(0,Data1);
var : D5_D15_sumDO(0,Data1),D5_D15_sumC(0,Data1),D5_D15_diff(0,Data1);
var : D5_D15_TL1(0,Data1),D5_D15_TL2(0,Data1),D5_D15_mid(0,Data1);
D5_D15_V1 = Data5(c);
D5_D15_V2 = Data15(c);
D5_D15_OO = Data5(OpenD(0));
if CrossUp(D5_D15_V1, D5_D15_V2) or CrossDown(D5_D15_V1, D5_D15_V2) Then
{
D5_D15_mid = (D5_D15_V1+D5_D15_V2)/2;
TL_Delete(D5_D15_TL1);
TL_Delete(D5_D15_TL2);
D5_D15_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D5_D15_TL2 = TL_New_Self(sDate,sTime,D5_D15_mid,NextBarSdate,NextBarStime,D5_D15_mid);
TL_SetSize(D5_D15_TL1, D5_D15_굵기);
TL_SetSize(D5_D15_TL2, D5_D15_굵기);
TL_SetColor(D5_D15_TL1, D5_D15_색상);
TL_SetColor(D5_D15_TL2, D5_D15_색상);
TL_SetExtRight(D5_D15_TL1, true);
TL_SetExtRight(D5_D15_TL2, true);
}
Plot4(D5_D15_OO);
#Data6-Data16
input : D6_D16_굵기(1),D6_D16_색상(GREEN);
var : D6_D16_V1(0,Data1),D6_D16_V2(0,Data1),D6_D16_OO(0,Data1);
var : D6_D16_sumDO(0,Data1),D6_D16_sumC(0,Data1),D6_D16_diff(0,Data1);
var : D6_D16_TL1(0,Data1),D6_D16_TL2(0,Data1),D6_D16_mid(0,Data1);
D6_D16_V1 = Data6(c);
D6_D16_V2 = Data16(c);
D6_D16_OO = Data6(OpenD(0));
if CrossUp(D6_D16_V1, D6_D16_V2) or CrossDown(D6_D16_V1, D6_D16_V2) Then
{
D6_D16_mid = (D6_D16_V1+D6_D16_V2)/2;
TL_Delete(D6_D16_TL1);
TL_Delete(D6_D16_TL2);
D6_D16_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D6_D16_TL2 = TL_New_Self(sDate,sTime,D6_D16_mid,NextBarSdate,NextBarStime,D6_D16_mid);
TL_SetSize(D6_D16_TL1, D6_D16_굵기);
TL_SetSize(D6_D16_TL2, D6_D16_굵기);
TL_SetColor(D6_D16_TL1, D6_D16_색상);
TL_SetColor(D6_D16_TL2, D6_D16_색상);
TL_SetExtRight(D6_D16_TL1, true);
TL_SetExtRight(D6_D16_TL2, true);
}
Plot5(D6_D16_OO);
#Data7-Data17
input : D7_D17_굵기(1),D7_D17_색상(GREEN);
var : D7_D17_V1(0,Data1),D7_D17_V2(0,Data1),D7_D17_OO(0,Data1);
var : D7_D17_sumDO(0,Data1),D7_D17_sumC(0,Data1),D7_D17_diff(0,Data1);
var : D7_D17_TL1(0,Data1),D7_D17_TL2(0,Data1),D7_D17_mid(0,Data1);
D7_D17_V1 = Data7(c);
D7_D17_V2 = Data17(c);
D7_D17_OO = Data7(OpenD(0));
if CrossUp(D7_D17_V1, D7_D17_V2) or CrossDown(D7_D17_V1, D7_D17_V2) Then
{
D7_D17_mid = (D7_D17_V1+D7_D17_V2)/2;
TL_Delete(D7_D17_TL1);
TL_Delete(D7_D17_TL2);
D7_D17_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D7_D17_TL2 = TL_New_Self(sDate,sTime,D7_D17_mid,NextBarSdate,NextBarStime,D7_D17_mid);
TL_SetSize(D7_D17_TL1, D7_D17_굵기);
TL_SetSize(D7_D17_TL2, D7_D17_굵기);
TL_SetColor(D7_D17_TL1, D7_D17_색상);
TL_SetColor(D7_D17_TL2, D7_D17_색상);
TL_SetExtRight(D7_D17_TL1, true);
TL_SetExtRight(D7_D17_TL2, true);
}
Plot6(D7_D17_OO);
#Data8-Data18
input : D8_D18_굵기(1),D8_D18_색상(GREEN);
var : D8_D18_V1(0,Data1),D8_D18_V2(0,Data1),D8_D18_OO(0,Data1);
var : D8_D18_sumDO(0,Data1),D8_D18_sumC(0,Data1),D8_D18_diff(0,Data1);
var : D8_D18_TL1(0,Data1),D8_D18_TL2(0,Data1),D8_D18_mid(0,Data1);
D8_D18_V1 = Data8(c);
D8_D18_V2 = Data18(c);
D8_D18_OO = Data8(OpenD(0));
if CrossUp(D8_D18_V1, D8_D18_V2) or CrossDown(D8_D18_V1, D8_D18_V2) Then
{
D8_D18_mid = (D8_D18_V1+D8_D18_V2)/2;
TL_Delete(D8_D18_TL1);
TL_Delete(D8_D18_TL2);
D8_D18_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D8_D18_TL2 = TL_New_Self(sDate,sTime,D8_D18_mid,NextBarSdate,NextBarStime,D8_D18_mid);
TL_SetSize(D8_D18_TL1, D8_D18_굵기);
TL_SetSize(D8_D18_TL2, D8_D18_굵기);
TL_SetColor(D8_D18_TL1, D8_D18_색상);
TL_SetColor(D8_D18_TL2, D8_D18_색상);
TL_SetExtRight(D8_D18_TL1, true);
TL_SetExtRight(D8_D18_TL2, true);
}
Plot7(D8_D18_OO);
#Data9-Data19
input : D9_D19_굵기(1),D9_D19_색상(GREEN);
var : D9_D19_V1(0,Data1),D9_D19_V2(0,Data1),D9_D19_OO(0,Data1);
var : D9_D19_sumDO(0,Data1),D9_D19_sumC(0,Data1),D9_D19_diff(0,Data1);
var : D9_D19_TL1(0,Data1),D9_D19_TL2(0,Data1),D9_D19_mid(0,Data1);
D9_D19_V1 = Data9(c);
D9_D19_V2 = Data19(c);
D9_D19_OO = Data9(OpenD(0));
if CrossUp(D9_D19_V1, D9_D19_V2) or CrossDown(D9_D19_V1, D9_D19_V2) Then
{
D9_D19_mid = (D9_D19_V1+D9_D19_V2)/2;
TL_Delete(D9_D19_TL1);
TL_Delete(D9_D19_TL2);
D9_D19_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D9_D19_TL2 = TL_New_Self(sDate,sTime,D9_D19_mid,NextBarSdate,NextBarStime,D9_D19_mid);
TL_SetSize(D9_D19_TL1, D9_D19_굵기);
TL_SetSize(D9_D19_TL2, D9_D19_굵기);
TL_SetColor(D9_D19_TL1, D9_D19_색상);
TL_SetColor(D9_D19_TL2, D9_D19_색상);
TL_SetExtRight(D9_D19_TL1, true);
TL_SetExtRight(D9_D19_TL2, true);
}
Plot8(D9_D19_OO);
#Data10-Data20
input : D10_D20_굵기(1),D10_D20_색상(GREEN);
var : D10_D20_V1(0,Data1),D10_D20_V2(0,Data1),D10_D20_OO(0,Data1);
var : D10_D20_sumDO(0,Data1),D10_D20_sumC(0,Data1),D10_D20_diff(0,Data1);
var : D10_D20_TL1(0,Data1),D10_D20_TL2(0,Data1),D10_D20_mid(0,Data1);
D10_D20_V1 = Data10(c);
D10_D20_V2 = Data20(c);
D10_D20_OO = Data10(OpenD(0));
if CrossUp(D10_D20_V1, D10_D20_V2) or CrossDown(D10_D20_V1, D10_D20_V2) Then
{
D10_D20_mid = (D10_D20_V1+D10_D20_V2)/2;
TL_Delete(D10_D20_TL1);
TL_Delete(D10_D20_TL2);
D10_D20_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D10_D20_TL2 = TL_New_Self(sDate,sTime,D10_D20_mid,NextBarSdate,NextBarStime,D10_D20_mid);
TL_SetSize(D10_D20_TL1, D10_D20_굵기);
TL_SetSize(D10_D20_TL2, D10_D20_굵기);
TL_SetColor(D10_D20_TL1, D10_D20_색상);
TL_SetColor(D10_D20_TL2, D10_D20_색상);
TL_SetExtRight(D10_D20_TL1, true);
TL_SetExtRight(D10_D20_TL2, true);
}
Plot9(D10_D20_OO);
#Data11-Data21
input : D11_D21_굵기(1),D11_D21_색상(GREEN);
var : D11_D21_V1(0,Data1),D11_D21_V2(0,Data1),D11_D21_OO(0,Data1);
var : D11_D21_sumDO(0,Data1),D11_D21_sumC(0,Data1),D11_D21_diff(0,Data1);
var : D11_D21_TL1(0,Data1),D11_D21_TL2(0,Data1),D11_D21_mid(0,Data1);
D11_D21_V1 = Data11(c);
D11_D21_V2 = Data21(c);
D11_D21_OO = Data11(OpenD(0));
if CrossUp(D11_D21_V1, D11_D21_V2) or CrossDown(D11_D21_V1, D11_D21_V2) Then
{
D11_D21_mid = (D11_D21_V1+D11_D21_V2)/2;
TL_Delete(D11_D21_TL1);
TL_Delete(D11_D21_TL2);
D11_D21_TL1 = TL_New(sDate,sTime,C,NextBarSdate,NextBarStime,C);
D11_D21_TL2 = TL_New_Self(sDate,sTime,D11_D21_mid,NextBarSdate,NextBarStime,D11_D21_mid);
TL_SetSize(D11_D21_TL1, D11_D21_굵기);
TL_SetSize(D11_D21_TL2, D11_D21_굵기);
TL_SetColor(D11_D21_TL1, D11_D21_색상);
TL_SetColor(D11_D21_TL2, D11_D21_색상);
TL_SetExtRight(D11_D21_TL1, true);
TL_SetExtRight(D11_D21_TL2, true);
}
Plot10(D11_D21_OO);
새해 좋은 일만 가득하시길 바랍니다.
> qha71 님이 쓴 글입니다.
> 제목 : 수식 의뢰드립니다.
> 안녕하세요!
만들어주신 수식 너무 감사합니다!
오늘 매매를 하다 보니 조금 더 보강을 하고 싶은 부분이 있어 다시 글을 올립니다!
제가 현재 사용하는 매매창 레이아웃은
1. 선물 (Data1)
2. 콜 당일 등가(data2)
3. 풋 당일 등가(data3) 교챠차트 입니다.
이것을
1. 선물 (Data1)
2. 콜 당일 등가 포함(data2~11)
3. 풋 당일 등가(data12~21) 의 교챠차트로 레이아웃을 바꾸고 싶습니다!
그 조건에 맞게 아래 수식을 수정 부탁드립니다!
그리고 아래 조건이 수식으로 표현이 가능한지는 모르겠지만
옵션챠트에서 교차선이 나타나면 동일시간의 조건으로 동시에 그 선이 선물챠트에서도 나타낼 수 있는지 문의드립니다! 이때 계산상으로 옵션가격을 선물가격으로 환산하는 조건이 필요하다고 생각합니다!
교차선이 등가 위에서 발생하면 파랑색 / 등가 아래에서 발생하면 빨강색이 선물챠트에 나타나도록 하고 싶습니다!
만약에 수식상 가격 환산이 불가능하다면 단순히 동시간대의 개념으로 옵션교차수평선이 옵션챠트에서 나타나면 선물챠트에서도 동시에 나타나는 식이어도 상관없습니다!
그저 같은 위치에 선만 나타나길 바랍니다!
부탁드립니다!
input : 굵기(1),색상(GREEN);
var : sumDO(0,Data1),sumC(0,Data1),diff(0,Data1),TL(0,Data1),mid(0,Data1);
#교차선
if CrossUp(Data1(c),Data2(c)) or CrossDown(Data1(c),Data2(c)) Then
{
mid = (Data1(c)+data2(c))/2;
TL_Delete(TL);
TL = TL_New(sDate,sTime,mid,NextBarSdate,NextBarStime,mid);
TL_SetSize(TL,굵기);
TL_SetColor(TL,색상);
TL_SetExtRight(TL,true);
}