커뮤니티
시스템수식 부탁드립니다.
2019-06-03 22:23:37
300
글번호 129120
항상 도움 주셔서 감사합니다.
아래 첨부파일의 수식에 대한 시스템식 부탁드립니다.
감사합니다.
답변 1
예스스탁 예스스탁 답변
2019-06-03 13:46:46
안녕하세요
예스스탁입니다.
시스템은 차트의 데이타로 계산하고 차트 기본종목에 대해서 신호와 주문이 발생합니다.
수식안에서 종목코드등으로 지정해 특정종목의 데이타를 가겨오는 내용이 없습니다.
실제 계좌의 현금이나 자산평가는 알수 없습니다.
아래 수식은 지정일 첫 매수를 시작으로
원별변경시 지정한 조건에 의해 비중계산해 매수와 매도하며
최초 5천만원에서 금액을 가감해 현금을 수식안에서 계산합니다.
차트기반의 언어로 완전 구현하기 어려운 부분들이 있습니다.
아래 내용 참고하셔서 이후 부분은 수정보완해 완성해 사용하시기 바랍니다.
input : 시작일(20190527),n(3),투자금(50000000);
var : cnt(0),sum(0),d1(0),R(0),vv(0),cash(0),total(0);
Array : CC[10](0);
total = cash + CurrentContracts*c;
#주변경은 DayOfWeek(NextBarSdate) < DayOfWeek(sdate)
if NextBarSdate > sdate+30 Then #월변경
{
CC[0] = C;
for cnt = 1 to 9
{
CC[cnt] = CC[cnt-1][1];
}
if sdate > d1 and d1 > 0 then
{
sum = 0;
for cnt = 1 to n
{
if CC[0] > CC[cnt] Then
sum = sum + 1;
}
R = sum/n;
total = cash + CurrentContracts*NextBarOpen;
if CurrentContracts*CC[0] < total*R Then
{
vv = Floor(abs(total*R - CurrentContracts*CC[0])/CC[0]);
if vv > 0 Then
{
buy("bb",AtMarket,def,vv);
cash = cash-VV*CC[0];
}
}
Else
{
vv = Floor(abs(total*R - CurrentContracts*CC[0])/CC[0]);
if vv > 0 Then
{
ExitLong("bx",AtMarket,def,"",vv,2);
cash = cash+VV*CC[0];
}
}
}
}
if MarketPosition == 0 and sdate == 시작일 and NextBarSdate > sdate and CC[n] > 0 then
{
sum = 0;
for cnt = 1 to n
{
if c > CC[cnt] Then
sum = sum + 1;
}
if sum >= 1 then
{
d1 = sdate;
R = sum/n;
vv = Floor((투자금*R)/C);
cash = 투자금-VV*C;
buy("b",OnClose,def,vv);
}
}
즐거운 하루되세요
> 양치기 님이 쓴 글입니다.
> 제목 : 시스템수식 부탁드립니다.
> 항상 도움 주셔서 감사합니다.
아래 첨부파일의 수식에 대한 시스템식 부탁드립니다.
감사합니다.