커뮤니티
수식 변환 문의
2017-03-26 15:06:17
180
글번호 108193
안녕하세요.
아래 수식은 해외사이트에서 가져온 것인데, 예스랭귀지와 달라서
이것저것 찾아봐도 저로써는 해석이 불가하네요..
예스랭귀지로 변환이 가능하면 부탁 드리겠습니다.
< 수식 >
Input:
Lookback(40),
Width(100),
ExtendType(1);
Vars:
nBar(0),
nCenter(0),
nRangeH(0),
nRangeL(0),
nShift(0),
idxStart(50),
lookbackMax(150),
lookbackUse(0),
idxBase(0),
Counter(0),
txtID(Symbol + "_I" + numtostr(BarInterval,0) + "_T" + numtostr(BarType,0) + "_EBBand"),
txtDiag("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxXX"),
retEB(0);
Array:
float arrValIn[50](0),
float arrValOut[1000](0);
DefineDLLFunc: "C:₩Database₩PSS_EB₩PSS_EB.DLL", int , "PSS_EB", LPSTR,LPFLOAT,LPFLOAT,LPSTR;
nBar = BarNumber;
lookbackUse = Lookback;
IF lookbackUse > lookbackMax THEN
lookbackUse = lookbackMax;
nShift = lookbackUse/2;
arrValIn[0] = Date data1;
arrValIn[1] = Time data1;
arrValIn[2] = Open data1;
arrValIn[3] = High data1;
arrValIn[4] = Low data1;
arrValIn[5] = Close data1;
arrValIn[6] = UpTicks data1;
arrValIn[7] = BarNumber data1;
arrValIn[8] = BarInterval data1;
arrValIn[9] = BarType data1;
arrValIn[10]= DownTicks data1;
arrValIn[11]= CustomerID;
arrValIn[12]= lookbackUse;
arrValIn[13]= Width;
arrValIn[14]= 1;
arrValIn[15]= ExtendType;
arrValIn[16]= 0;
retEB = PSS_EB(txtID,&arrValIn[0],&arrValOut[0],txtDiag);
{====== PROCESS ERRORS ===============================================}
IF retEB < -100 THEN
RaiseRunTimeError(txtDiag);
if retEB >= 0 THEN BEGIN
//show new confirmed points
nCenter = arrValOut[10];
nRangeH = arrValOut[11];
nRangeL = arrValOut[12];
Plot1[nShift](nRangeH, "RangeH" );
Plot2[nShift](nRangeL, "RangeL" );
Plot3[nShift](nCenter, "Center" );
//draw extension envelope
if ExtendType > 0 AND retEB > 0 then begin
For Counter = 1 To nShift Begin
idxBase = idxStart+((Counter-1)*6);
nRangeH = arrValOut[idxBase+0];
nRangeL = arrValOut[idxBase+1];
nCenter = arrValOut[idxBase+2];
Plot1[nShift-Counter](nRangeH,"RangeH");
Plot2[nShift-Counter](nRangeL,"RangeL");
Plot3[nShift-Counter](nCenter,"Center");
End;
end;
end;
답변 1
예스스탁 예스스탁 답변
2017-03-27 15:12:39
안녕하세요
예스스탁입니다.
올리신 내용 변환이 가능하지 않습니다.
수식상에 DLL파일과 연관되는 부분이 있는데
저희쪽에서 해당 기능이 없습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 라베시 님이 쓴 글입니다.
> 제목 : 수식 변환 문의
>
안녕하세요.
아래 수식은 해외사이트에서 가져온 것인데, 예스랭귀지와 달라서
이것저것 찾아봐도 저로써는 해석이 불가하네요..
예스랭귀지로 변환이 가능하면 부탁 드리겠습니다.
< 수식 >
Input:
Lookback(40),
Width(100),
ExtendType(1);
Vars:
nBar(0),
nCenter(0),
nRangeH(0),
nRangeL(0),
nShift(0),
idxStart(50),
lookbackMax(150),
lookbackUse(0),
idxBase(0),
Counter(0),
txtID(Symbol + "_I" + numtostr(BarInterval,0) + "_T" + numtostr(BarType,0) + "_EBBand"),
txtDiag("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxXX"),
retEB(0);
Array:
float arrValIn[50](0),
float arrValOut[1000](0);
DefineDLLFunc: "C:₩Database₩PSS_EB₩PSS_EB.DLL", int , "PSS_EB", LPSTR,LPFLOAT,LPFLOAT,LPSTR;
nBar = BarNumber;
lookbackUse = Lookback;
IF lookbackUse > lookbackMax THEN
lookbackUse = lookbackMax;
nShift = lookbackUse/2;
arrValIn[0] = Date data1;
arrValIn[1] = Time data1;
arrValIn[2] = Open data1;
arrValIn[3] = High data1;
arrValIn[4] = Low data1;
arrValIn[5] = Close data1;
arrValIn[6] = UpTicks data1;
arrValIn[7] = BarNumber data1;
arrValIn[8] = BarInterval data1;
arrValIn[9] = BarType data1;
arrValIn[10]= DownTicks data1;
arrValIn[11]= CustomerID;
arrValIn[12]= lookbackUse;
arrValIn[13]= Width;
arrValIn[14]= 1;
arrValIn[15]= ExtendType;
arrValIn[16]= 0;
retEB = PSS_EB(txtID,&arrValIn[0],&arrValOut[0],txtDiag);
{====== PROCESS ERRORS ===============================================}
IF retEB < -100 THEN
RaiseRunTimeError(txtDiag);
if retEB >= 0 THEN BEGIN
//show new confirmed points
nCenter = arrValOut[10];
nRangeH = arrValOut[11];
nRangeL = arrValOut[12];
Plot1[nShift](nRangeH, "RangeH" );
Plot2[nShift](nRangeL, "RangeL" );
Plot3[nShift](nCenter, "Center" );
//draw extension envelope
if ExtendType > 0 AND retEB > 0 then begin
For Counter = 1 To nShift Begin
idxBase = idxStart+((Counter-1)*6);
nRangeH = arrValOut[idxBase+0];
nRangeL = arrValOut[idxBase+1];
nCenter = arrValOut[idxBase+2];
Plot1[nShift-Counter](nRangeH,"RangeH");
Plot2[nShift-Counter](nRangeL,"RangeL");
Plot3[nShift-Counter](nCenter,"Center");
End;
end;
end;
이전글