Main.MessageLog("시작") ;
a1.Refresh() ;
OrderCode = Main.GetOrderCode(order1.code);
a1.SetBalance(OrderCode, 0) ;
if (a1.Balance.position != 1 && a1.Balance.position != 2 )
{
position = 0 ;
cnt = 0 ;
Main.MessageLog("무포지션");
}
if (a1.Balance.position == 1 )
{
position = -1 ;
cnt = 1 ;
Main.MessageLog("매도포지션");
}
if (a1.Balance.position == 2 )
{
position = 1 ;
cnt = 1 ;
Main.MessageLog("매수포지션");
}
위식으로 예스글로벌과 예스트레이더에 같이 쓰고 있읍니다
예스트레이더에서는 계좌 포지션을 제대로 읽어오는데
글로벌에서는 제대로 않되는 이유가 먼가요 ?
답변 1
예스스탁
예스스탁 답변
2018-07-12 17:09:21
안녕하세요
예스스탁입니다.
1
이전에 수식작성 Q&A에 비슷한 내용에 대해 문의하신 부분이 있습니다.
계좌재조회를 하게 되면 실제원장과 가원장이 동기화가 되므로
동기화가 완료되기 전에 잔고셋팅 되어 가원장의 수량이 0일수 있습니다.
동기화를 하면 동기화가 완료된 것을 확인하고 값확인이나 저장을 하게 코딩하셔야 합니다.
증권사별로 상황에 따라 동기화 속도가 다를수 있습니다.
2
var Position,cnt,OrderCode;
function Main_OnStart()
{
Main.MessageLog("시작") ;
a1.Refresh();
}
function Main_OnUp*dateAccount(sAccntNum, sItemCode, lUp*dateID)
{
if (lUp*dateID == 30000)
{
OrderCode = Main.GetOrderCode(order1.code);
a1.SetBalance(OrderCode, 0) ;
if (a1.Balance.position != 1 && a1.Balance.position != 2 )
{
Position = 0 ;
cnt = 0 ;
Main.MessageLog("무포지션");
}
if (a1.Balance.position == 1 )
{
Position = -1 ;
cnt = 1 ;
Main.MessageLog("매도포지션");
}
if (a1.Balance.position == 2 )
{
Position = 1 ;
cnt = 1 ;
Main.MessageLog("매수포지션");
}
}
}
즐거운 하루되세요
> 파일럿 님이 쓴 글입니다.
> 제목 : 문의
> Main.MessageLog("시작") ;
a1.Refresh() ;
OrderCode = Main.GetOrderCode(order1.code);
a1.SetBalance(OrderCode, 0) ;
if (a1.Balance.position != 1 && a1.Balance.position != 2 )
{
position = 0 ;
cnt = 0 ;
Main.MessageLog("무포지션");
}
if (a1.Balance.position == 1 )
{
position = -1 ;
cnt = 1 ;
Main.MessageLog("매도포지션");
}
if (a1.Balance.position == 2 )
{
position = 1 ;
cnt = 1 ;
Main.MessageLog("매수포지션");
}
위식으로 예스글로벌과 예스트레이더에 같이 쓰고 있읍니다
예스트레이더에서는 계좌 포지션을 제대로 읽어오는데
글로벌에서는 제대로 않되는 이유가 먼가요 ?