커뮤니티

잉 검증은 안되고 오류가 왜이리많아요ㅠㅠ

프로필 이미지
회원
2013-05-10 10:38:55
581
글번호 63036
답변완료
안녕하세요 수고하십니다 왜이리 오류가 많게 짜주시나요 ㅠㅠ 오류 수정 부탁드립니다 감사합니다 ^^ 검증 되고 신호나오면 별다섯개 드려요 ^^ 관리자님 짱 ^^ ### 1번식 아래 매수와 매도식과 같이 or로 조건을 연결해 사용하시면 됩니다. 각 값이 크로스가 가능한 값인지 확인하시기 바랍니다. 올리신 옵션그릭수치나 변동성과 관련해서는 저희 쪽에서 수식 계산검증은 해드리지 않습니다. 이용에 참고하시기 바랍니다. input: cpflag(1), //콜풋 입력 InS(0), //현재 지수를 입력 안하면 data 참조를 통해 실시간 가격을 이용. 테스트시 이용 x(145.0), //행사가 입력 ex(20050908), //만기일 r(0.0351), //CD 금리, 요기서 볼 수 있음 ==> http://stock.koscom.co.kr/ q(0), //배당률 InSig(0), //내재변동성을 입력 안하면 자체 계산된 변동성을 사용. 단, 오차 감안해야 함 InPrice(0); //역시 테스트를 목적으로 함 var:S(0),T(0),sig(0),price(0),ImVol(0),bs(0),delta(0),gamma(0),vega(0),theta(0),rho(0); S = iff(inS!=0,inS,data1("c")); //kospi종합을 같이 띄워 놓아야 합니다. T = (DateToJulian(ex) - DateToJulian(date) + 1)/365; price = iff(inPrice!=0,inPrice,c); imvol = _ImVol(cpFlag, S, X, T, r, q, price); sig = iff(insig!=0,insig,ImVol); bs = _BlackSholes(cpFlag, S, X, T, r, q, sig); delta = _Delta(cpFlag, S, X, T, r, q, sig); gamma = _gamma(cpFlag, S, X, T, r, q, sig); theta = _theta(cpFlag, S, X, T, r, q, sig); vega = _vega(cpFlag, S, X, T, r, q, sig); rho = _rho(cpFlag, S, X, T, r, q, sig); if crossup(imvol*100,bs) or crossup(imvol*100,delta) or crossup(imvol*100,gamma) or crossup(imvol*100,theta) or crossup(imvol*100,vega) or crossup(imvol*100,rho) or crossup(bs,delta) or crossup(bs,gamma) or crossup(bs,theta) or crossup(bs,vega) or crossup(bs,rho) or crossup(delta,gamma) or crossup(delta,theta) or crossup(delta,vega) or crossup(delta,rho) or crossup(gamma,theta) or crossup(gamma,vega) or crossup(gamma,rho) or crossup(theta,vega) or crossup(theta,rho) or Then buy(); if CrossDown(imvol*100,bs) or CrossDown(imvol*100,delta) or CrossDown(imvol*100,gamma) or CrossDown(imvol*100,theta) or CrossDown(imvol*100,vega) or CrossDown(imvol*100,rho) or CrossDown(bs,delta) or CrossDown(bs,gamma) or CrossDown(bs,theta) or CrossDown(bs,vega) or CrossDown(bs,rho) or CrossDown(delta,gamma) or CrossDown(delta,theta) or CrossDown(delta,vega) or CrossDown(delta,rho) or CrossDown(gamma,theta) or CrossDown(gamma,vega) or CrossDown(gamma,rho) or CrossDown(theta,vega) or CrossDown(theta,rho) or Then sell();
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-05-10 14:27:44

안녕하세요 예스스탁입니다. 이전에 올리신 글에 해당 수식에서 사용되는 사용자함수에 대한 내용들이 있습니다. 해당 글에 있는 모든 사용자함수를 작성하시고 아래식 적용하셔야 합니다. 또한 변동성 및 옵션그릭수치들은 랭귀지로 계산이 어려운 부분이므로 올리신 글의 사영지 함수들이 정확한지는 저희쪽에서 검증해 드리지 않습니다. 즐거운 하루되세요 > yang오뚜기 님이 쓴 글입니다. > 제목 : 잉 검증은 안되고 오류가 왜이리많아요ㅠㅠ > 안녕하세요 수고하십니다 왜이리 오류가 많게 짜주시나요 ㅠㅠ 오류 수정 부탁드립니다 감사합니다 ^^ 검증 되고 신호나오면 별다섯개 드려요 ^^ 관리자님 짱 ^^ ### 1번식 아래 매수와 매도식과 같이 or로 조건을 연결해 사용하시면 됩니다. 각 값이 크로스가 가능한 값인지 확인하시기 바랍니다. 올리신 옵션그릭수치나 변동성과 관련해서는 저희 쪽에서 수식 계산검증은 해드리지 않습니다. 이용에 참고하시기 바랍니다. input: cpflag(1), //콜풋 입력 InS(0), //현재 지수를 입력 안하면 data 참조를 통해 실시간 가격을 이용. 테스트시 이용 x(145.0), //행사가 입력 ex(20050908), //만기일 r(0.0351), //CD 금리, 요기서 볼 수 있음 ==> http://stock.koscom.co.kr/ q(0), //배당률 InSig(0), //내재변동성을 입력 안하면 자체 계산된 변동성을 사용. 단, 오차 감안해야 함 InPrice(0); //역시 테스트를 목적으로 함 var:S(0),T(0),sig(0),price(0),ImVol(0),bs(0),delta(0),gamma(0),vega(0),theta(0),rho(0); S = iff(inS!=0,inS,data1("c")); //kospi종합을 같이 띄워 놓아야 합니다. T = (DateToJulian(ex) - DateToJulian(date) + 1)/365; price = iff(inPrice!=0,inPrice,c); imvol = _ImVol(cpFlag, S, X, T, r, q, price); sig = iff(insig!=0,insig,ImVol); bs = _BlackSholes(cpFlag, S, X, T, r, q, sig); delta = _Delta(cpFlag, S, X, T, r, q, sig); gamma = _gamma(cpFlag, S, X, T, r, q, sig); theta = _theta(cpFlag, S, X, T, r, q, sig); vega = _vega(cpFlag, S, X, T, r, q, sig); rho = _rho(cpFlag, S, X, T, r, q, sig); if crossup(imvol*100,bs) or crossup(imvol*100,delta) or crossup(imvol*100,gamma) or crossup(imvol*100,theta) or crossup(imvol*100,vega) or crossup(imvol*100,rho) or crossup(bs,delta) or crossup(bs,gamma) or crossup(bs,theta) or crossup(bs,vega) or crossup(bs,rho) or crossup(delta,gamma) or crossup(delta,theta) or crossup(delta,vega) or crossup(delta,rho) or crossup(gamma,theta) or crossup(gamma,vega) or crossup(gamma,rho) or crossup(theta,vega) or crossup(theta,rho) or Then buy(); if CrossDown(imvol*100,bs) or CrossDown(imvol*100,delta) or CrossDown(imvol*100,gamma) or CrossDown(imvol*100,theta) or CrossDown(imvol*100,vega) or CrossDown(imvol*100,rho) or CrossDown(bs,delta) or CrossDown(bs,gamma) or CrossDown(bs,theta) or CrossDown(bs,vega) or CrossDown(bs,rho) or CrossDown(delta,gamma) or CrossDown(delta,theta) or CrossDown(delta,vega) or CrossDown(delta,rho) or CrossDown(gamma,theta) or CrossDown(gamma,vega) or CrossDown(gamma,rho) or CrossDown(theta,vega) or CrossDown(theta,rho) or Then sell();