커뮤니티
예스스팟 Q&A
하리마우 님에 의해서 삭제되었습니다.
2014-07-04
0
글번호 223060
답변완료
매수청산 문의 드립니다.
안녕하세요^^ 오랜만에 다시 시스템트레이딩을 시작했습니다. 주식만 하고 있는데요..
예를들어 매수주문이 발생한 후 100주 주문이 나갔는데 50주만 체결되었을 경우 매수청산에서는 주문이 나가지 않을 경우 예스스팟에서 가능하다고 하셨는데요..
가능하시다면 설정방법이나 수식 알려주시면 감사하겠습니다. 만약, 괜찮으시다면 다음주에 서울에 노트북을 들고 방문할까 생각인데요, 한가한 시간대를 알려 주시면 감사하겠습니다. 그럼 수고하세요^^(T : 010-3030-4004)
2014-07-04
1296
글번호 223059
답변완료
예스글로발을 이용한 예스스팟 주문 가능 종목 리스트 부탁합니다
예스글로발을 이용한 예스스팟 주문 가능 종목 리스트 부탁합니다
예스글로벌의 예스스팟을 이용하여 지수와 상품에 대해 테스트 중입니다.
테스트 도중 알게된 사실은, 예스스팟 주문이 불가능한 종목이 있더군요
질문 드립니다
예스스팟을 이용한 자동매매 주문 가능 종목 리스트와 종목코드 리스트를 부탁드립니다.
2014-07-04
1303
글번호 223058
답변완료
예체량
안녕하세요.
현재가 창에서는 장시작전에 예체량이 나오는데,
YS의 MarketData는 예체량을 얻을 수 없더군요.
예체량을 얻을 수 있는 방법이 없을까요?
2014-07-03
1245
글번호 223055
답변완료
거래일기준 잔존일구하기
안녕하세요! 꾸벅!
현재 달력기준 잔존일은 Option,GetRemainDays로 제공되긴한데요...
거래기준 잔존일도 매우 중요하다고 생각합니다....
다음을 부탁드립니다
1. 급한대로 거래기준 잔존일을 구하는 함수 좀 부탁드리겠습니다.
2. 추후 Optiion객체에서 거래기준 잔존일도 함께 제공해 주시면 고맙겠습니다.
감사합니다.
2014-07-02
1196
글번호 223054
음양조파 님에 의해서 삭제되었습니다.
2014-07-02
3
글번호 223053
답변완료
수식 검토
안녕하세요
아래는 현물 관심종목그룹을 불러내서 종목과 차트를 생성하는 내용입니다.
그런데
1. 관심종목중에서 1번째 종목의 차트생성이 안되네요
아무리 봐도 알 수가 없네요 ㅜ
2. 생성된 관심종목의 차트에서
시스템 신호에 따른 매수와 청산식까지 마저 완성해주시면 고맙겠습니다.
var List = new Array(100);
var ListCnt; //관심종목의 수
var RcvCount; //종목객체 생성종목의 수
//종목객체를 저장할 배열변수
var SymBol = new Array(100);
//주문여부를 저장할 배열변수
var Buy = new Array(100);
//매수주문금액
var BuyMoney = 1000000;
function Main_OnStart()
{
//스팟실행시 지정한 이름의 관심종목을 호출
//관심종목의 종목수
ListCnt = Main.GetItemCountOfInterest("거래_단봉")
Main.MessageList("전체종목수",ListCnt);
//차례대로 배열변수 List에 저장( 최대 100종목)
for(var i = 0; i < ListCnt; i++)
{
List[i] = Main.GetItemCodeInInterest("거래_단봉", i);
Main.MessageList("거래_단봉",List[i]);
}
Main.ReqMarketData(List[0],50,0);
Start = false
RcvCount = 0;
}
//요청한 종목객체가 생성되면
function Main_OnRcvMarketData(MarketData)
{
//생성 종목수 카운트
RcvCount = RcvCount+1;
//배열변수 SymBol의 RcvCount방에 현재 수신된 종목객체 저장
SymBol[RcvCount] = MarketData;
Main.MessageList(RcvCount,"번째 종목생성",MarketData.name);
//다음 순번 종목객체 요청
if (RcvCount < ListCnt)
{
Main.SetTimer(1, 1000);
}
//종목객체가 모두 생성되면(종목검색으로 나온 종목수와 생성횟수가 같을때)
if (RcvCount == ListCnt)
{
Main.KillTimer(1);
Start = true;
Main.MessageList("종목생성완료",Start);
}
}
function Main_OnTimer(nEventID)
{
if (nEventID == 1)
{
Main.ReqMarketData(List[RcvCount],50,0);
for (var i = 1; i <= RcvCount; i++)
{
//차트설정 4분봉 500바
var ChartSet = new ReqChartItem(List[i],4,CHART_PERIOD_MINUTE,
500,CHART_REQCOUNT_BAR, false, false);
}
//시스템 설정
var SystemInputSet = new Array(new YLInputVar("p1", "80"),new YLInputVar
("p2", "160"));
var SystemSet = new SystemInfo("현물_4분",YL_TYPE_NORMAL,SystemInputSet);
Main.ReqChartEx(ChartSet,SystemSet);
}
}
2014-06-29
1269
글번호 223052
답변완료
수식문의
1.계좌에 선물수익이 50만원이상이면 전량 시장가 청산
2.(선물 체결결과 확인후)
매수에서 이익이었으면 콜(가격이 2.0에가장가까운 것을 찾아서),매도에서 이익이었으면 풋을(가격이 2.0에가장가까운 것을 찾아서) 계좌잔액의 전부(또는 일부를 선택해서) 현재가+5호가로 매수 주문한다.
3.옵션매수 미체결시 다시 +5호가 주문한다.
4.옵션 손실이 100만원이상이면 시장가 청산한다.
위 내용을 하나의 수식안에 작성해주시면 감사하겠습니다.
2014-06-27
1250
글번호 223047
답변완료
ETF 수식값 문의
ETF NAV값 받을수 있는 방법은 없나요???
수식 문의 했는데 아직 수식 지원이 안된다고 하셔서
지원 계획이 아예 없는건지 요청하면 지원이 되는건지
너무 필요한 데이터라 꼭 ETF NAV값을 데이터로 받아와야 하는지라...
방법좀 찾아 주세요 ㅠㅠ
2014-06-24
1321
글번호 223046
답변완료
스팟 문의
엑셀시트에 매매결과를 저장하고자 합니다.
엑셀객체: CXLRPT
(변수는 위에서 선언됨)
아래코드는 시그널이 발생하면 엑셀시트에 내용을 기록하는 일부코드입니다.
차트에서 기본적으로 피라미딩으로 진입합니다. A,B,C,D,E 신호가 발생한다고 가정(순서 랜덤)
A 매수진입신호가 발생하면
행 N에는 A신호에 대한 진입내역(진입시간, 시그널종류, 주문가격, 체결가격 등등)을 기록함
C 매수진입신호가 발생하면 N+1행에 C신호에 대한 진입내역 기록
B 매수신호가 발생하면 N+2행에 B신호에 대한 진입내역 기록
여기서 EXITLONG("A매수청산", ONCLOSE, DEF, "A", DEF); 신호가 발생하면 A진입에 대해 기록된 행(N)을 찾아서 바로 옆에 청산내역을 기록하고자 합니다. 핵심은 해당진입에 대해 해당 행에 기록하는 것인데 이부분이 좀 막힙니다. 코드 검증도 부탁드리겠습니다.
도움주시면 감사하겠습니다...
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// INIT
//
function CXLRPTInit()
{
var strData = CXLRPT.GetData(gCXLRPTxSheetIndex, "A1");
if (strData != "NO")
{
CXLRPT.SetRowData(gCXLRPTxSheetIndex,
"A1", "ITEM",
"OPEN TIME", "TYPE", "ORDER PRICE", "CONTRACT PRICE", "CONTRACTS",
"CLOSE TIME", "TYPE", "ORDER PRICE", "CONTRACT PRICE", "CONTRACTS",
"COMMISSION", "PROFITS");
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// XLS TRADING RESULT
//
function XLSTradingResult(TicketTime)
{
// BUY SIGNAL
if (gPosition == 1)
{
gCXLRPTxRowEB = CXLRPT.GetRowCount(gCXLRPTxSheetIndex) + 1;
CXLRPT.SetFont(gCXLRPTxSheetIndex, "A" + gCXLRPTxRowEB, "10", "Tahoma", "RED", false, true, 0);
CXLRPT.SetRowData(gCXLRPTxSheetIndex, "A" + gCXLRPTxRowEB, gOrderCode, TicketTime, "BUY", CMD.Ask(3), "-", gDefOrderContracts);
}
// EXITLONG SIGNAL
else if (gPosition == 2)
{
gCXLRPTxRowEXL = CXLRPT.GetRowCount(gCXLRPTxSheetIndex) + 1;
CXLRPT.SetRowData(gCXLRPTxSheetIndex, "G" + gCXLRPTxRowEXL, TicketTime, "EL", CMD.Bid(3), "-", gDefOrderContracts, gDefCommission * 2, gEBxContractPrice - gEXLxContractPrice);
}
// SELL SIGNAL
else if (gPosition == -1)
{
gCXLRPTxRowES = CXLRPT.GetRowCount(gCXLRPTxSheetIndex) + 1;
CXLRPT.SetRowData(gCXLRPTxSheetIndex, "A" + gCXLRPTxRowES, gOrderCode, TicketTime, "SELL", CMD.Bid(3), "-", gDefOrderContracts);
}
// EXISHORT SIGNAL
else if (gPosition == -2)
{
gCXLRPTxRowEXS = CXLRPT.GetRowCount(gCXLRPTxSheetIndex) + 1;
CXLRPT.SetRowData(gCXLRPTxSheetIndex, "G" + gCXLRPTxRowEXS, TicketTime, "ES", CMD.Ask(3), "-", gDefOrderContracts, gDefCommission * 2, gESxContractPrice - gEXSxContractPrice);
}
}
2014-06-23
1335
글번호 223044