커뮤니티

수식 변환 문의

프로필 이미지
라베시
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;