예스스탁
예스스탁 답변
2014-10-17 13:41:52
안녕하세요
예스스탁입니다.
예스스팟에 대한 수식답변은 가이드 정도입니다.
아래 수식 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
var Pst,Bv,Sv,Bx,Sx;
var BID,SID,Bnum,Snum;
function Main_OnStart()
{
Pst = 0;
Main.SetTimer(1, 5000);//5초 간격으로 타이머 작동
}
function Chart1_OnRiseSignal(Signal)
{
if (Pst <= 0 && Signal.signalKind == 1)
{
Pst = 1;
var aa = Account1.GetBalanceETCinfo(0);
Bv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
BID = Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Bv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
if (Pst == 1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Bnum);
if (Account1.Unfill.count > 0)
{
Bx = Bv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Bx > 0)
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
}
if (Pst >= 0 && Signal.signalKind == 1)
{
var aa = Account1.GetBalanceETCinfo(0);
Sv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
SID = Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current-MarketData1.GetTickSize()*5, 0);
}
if (Pst == -1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Snum);
if (Account1.Unfill.count > 0)
{
Sx = Sv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Sx > 0)
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
}
function Main_OnOrderResponse(OrderResponse)
{
if (OrderResponse.orderID == BID)
Bnum = OrderResponse.orderNum;
if (OrderResponse.orderID == SID)
Snum = OrderResponse.orderNum;
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
//15시15분
if (nEventID == 1 && HHMMSS >= 151500)
{
Main.KillTimer(1);
Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0);
if (Account1.Balance.position == 1)
Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1);
if (Account1.Balance.position == 2)
Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1);
}
}
즐거운 하루되세요
> sonamoo 님이 쓴 글입니다.
> 제목 : 수식문의
> 안녕하세요?
지금 예스트레이더로 자동거래를 하고 있습니다. 현재 예스트레이더로부터 발생하는 신호를 바탕으로 예스스팟 거래를 하려고 합니다. 수식 부탁드립니다.
===================
1.예스트레이더에서 매수신호 발생시 선물매수
2.예스트레이더에서 매수청산신호 발생시 선물 매수분 청산
3.예스트레이더에서 매도신호 발생시 선물매도
4.예스트레이더에서 매도청산신호 발생시 선물 매도분 청산
5.장시작 30초후에 계좌잔고 리플레쉬합니다.
6.선물 매수 매도시 수량은
Value = GetUnclearedDeposits("0000-0000-31");
Value99 = max(1,int(value/max((c*75000),20000000)));
의 벨류99값으로 합니다.
7.15시 6분까지 매수 또는 매도 잔고가 있는 경우 15시 15분에 동시호가 청산합니다.
8.매수나 매도 진입가격은 신호발생 현재가+-5호가로 주문을 넣습니다.
9.청산시에는 미체결 수량 존재시 미체결 수량은 주문취소를 먼저하고 잔고 수량을 청산합니다.
=================
미리감사드립니다.
sonamoo
2014-10-24 14:12:42
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
이부분에서 에러가 나내요
에러메세지는 syntaxerror;unexpected token) 입니다
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식문의
> 안녕하세요
예스스탁입니다.
예스스팟에 대한 수식답변은 가이드 정도입니다.
아래 수식 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
var Pst,Bv,Sv,Bx,Sx;
var BID,SID,Bnum,Snum;
function Main_OnStart()
{
Pst = 0;
Main.SetTimer(1, 5000);//5초 간격으로 타이머 작동
}
function Chart1_OnRiseSignal(Signal)
{
if (Pst <= 0 && Signal.signalKind == 1)
{
Pst = 1;
var aa = Account1.GetBalanceETCinfo(0);
Bv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
BID = Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Bv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
if (Pst == 1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Bnum);
if (Account1.Unfill.count > 0)
{
Bx = Bv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Bx > 0)
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
}
if (Pst >= 0 && Signal.signalKind == 1)
{
var aa = Account1.GetBalanceETCinfo(0);
Sv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
SID = Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current-MarketData1.GetTickSize()*5, 0);
}
if (Pst == -1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Snum);
if (Account1.Unfill.count > 0)
{
Sx = Sv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Sx > 0)
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
}
function Main_OnOrderResponse(OrderResponse)
{
if (OrderResponse.orderID == BID)
Bnum = OrderResponse.orderNum;
if (OrderResponse.orderID == SID)
Snum = OrderResponse.orderNum;
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
//15시15분
if (nEventID == 1 && HHMMSS >= 151500)
{
Main.KillTimer(1);
Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0);
if (Account1.Balance.position == 1)
Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1);
if (Account1.Balance.position == 2)
Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1);
}
}
즐거운 하루되세요
> sonamoo 님이 쓴 글입니다.
> 제목 : 수식문의
> 안녕하세요?
지금 예스트레이더로 자동거래를 하고 있습니다. 현재 예스트레이더로부터 발생하는 신호를 바탕으로 예스스팟 거래를 하려고 합니다. 수식 부탁드립니다.
===================
1.예스트레이더에서 매수신호 발생시 선물매수
2.예스트레이더에서 매수청산신호 발생시 선물 매수분 청산
3.예스트레이더에서 매도신호 발생시 선물매도
4.예스트레이더에서 매도청산신호 발생시 선물 매도분 청산
5.장시작 30초후에 계좌잔고 리플레쉬합니다.
6.선물 매수 매도시 수량은
Value = GetUnclearedDeposits("0000-0000-31");
Value99 = max(1,int(value/max((c*75000),20000000)));
의 벨류99값으로 합니다.
7.15시 6분까지 매수 또는 매도 잔고가 있는 경우 15시 15분에 동시호가 청산합니다.
8.매수나 매도 진입가격은 신호발생 현재가+-5호가로 주문을 넣습니다.
9.청산시에는 미체결 수량 존재시 미체결 수량은 주문취소를 먼저하고 잔고 수량을 청산합니다.
=================
미리감사드립니다.
sonamoo
2014-10-24 14:12:42
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
이부분에서 에러가 나내요
에러메세지는 syntaxerror;unexpected token) 입니다
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식문의
> 안녕하세요
예스스탁입니다.
예스스팟에 대한 수식답변은 가이드 정도입니다.
아래 수식 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
var Pst,Bv,Sv,Bx,Sx;
var BID,SID,Bnum,Snum;
function Main_OnStart()
{
Pst = 0;
Main.SetTimer(1, 5000);//5초 간격으로 타이머 작동
}
function Chart1_OnRiseSignal(Signal)
{
if (Pst <= 0 && Signal.signalKind == 1)
{
Pst = 1;
var aa = Account1.GetBalanceETCinfo(0);
Bv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
BID = Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Bv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
if (Pst == 1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Bnum);
if (Account1.Unfill.count > 0)
{
Bx = Bv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Bx > 0)
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
}
if (Pst >= 0 && Signal.signalKind == 1)
{
var aa = Account1.GetBalanceETCinfo(0);
Sv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
SID = Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current-MarketData1.GetTickSize()*5, 0);
}
if (Pst == -1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Snum);
if (Account1.Unfill.count > 0)
{
Sx = Sv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Sx > 0)
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
}
function Main_OnOrderResponse(OrderResponse)
{
if (OrderResponse.orderID == BID)
Bnum = OrderResponse.orderNum;
if (OrderResponse.orderID == SID)
Snum = OrderResponse.orderNum;
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
//15시15분
if (nEventID == 1 && HHMMSS >= 151500)
{
Main.KillTimer(1);
Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0);
if (Account1.Balance.position == 1)
Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1);
if (Account1.Balance.position == 2)
Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1);
}
}
즐거운 하루되세요
> sonamoo 님이 쓴 글입니다.
> 제목 : 수식문의
> 안녕하세요?
지금 예스트레이더로 자동거래를 하고 있습니다. 현재 예스트레이더로부터 발생하는 신호를 바탕으로 예스스팟 거래를 하려고 합니다. 수식 부탁드립니다.
===================
1.예스트레이더에서 매수신호 발생시 선물매수
2.예스트레이더에서 매수청산신호 발생시 선물 매수분 청산
3.예스트레이더에서 매도신호 발생시 선물매도
4.예스트레이더에서 매도청산신호 발생시 선물 매도분 청산
5.장시작 30초후에 계좌잔고 리플레쉬합니다.
6.선물 매수 매도시 수량은
Value = GetUnclearedDeposits("0000-0000-31");
Value99 = max(1,int(value/max((c*75000),20000000)));
의 벨류99값으로 합니다.
7.15시 6분까지 매수 또는 매도 잔고가 있는 경우 15시 15분에 동시호가 청산합니다.
8.매수나 매도 진입가격은 신호발생 현재가+-5호가로 주문을 넣습니다.
9.청산시에는 미체결 수량 존재시 미체결 수량은 주문취소를 먼저하고 잔고 수량을 청산합니다.
=================
미리감사드립니다.
예스스탁
예스스탁 답변
2014-10-24 17:12:00
안녕하세요
예스스탁이빈다.
)가 중복으로 있었습니다.
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5, 0);
즐거운 하루되세요
> sonamoo 님이 쓴 글입니다.
> 제목 : Re : Re : 검증하는 과정에서 에러가 납니다.
>
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
이부분에서 에러가 나내요
에러메세지는 syntaxerror;unexpected token) 입니다
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식문의
> 안녕하세요
예스스탁입니다.
예스스팟에 대한 수식답변은 가이드 정도입니다.
아래 수식 내용 참고하셔서 수정보완해 사용하시기 바랍니다.
var Pst,Bv,Sv,Bx,Sx;
var BID,SID,Bnum,Snum;
function Main_OnStart()
{
Pst = 0;
Main.SetTimer(1, 5000);//5초 간격으로 타이머 작동
}
function Chart1_OnRiseSignal(Signal)
{
if (Pst <= 0 && Signal.signalKind == 1)
{
Pst = 1;
var aa = Account1.GetBalanceETCinfo(0);
Bv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
BID = Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Bv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
if (Pst == 1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Bnum);
if (Account1.Unfill.count > 0)
{
Bx = Bv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Bx > 0)
Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Bx, MarketData1.current-MarketData1.GetTickSize()*5), 0);
}
if (Pst >= 0 && Signal.signalKind == 1)
{
var aa = Account1.GetBalanceETCinfo(0);
Sv = Math.max(1,Math.int(aa/MAth.max((MarketData1.current*75000),20000000)));
SID = Account1.OrderSell(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current-MarketData1.GetTickSize()*5, 0);
}
if (Pst == -1 && Signal.signalKind == 1)
{
Pst = 0;
Account1.SetUnfillOrderNumber(Snum);
if (Account1.Unfill.count > 0)
{
Sx = Sv-Account1.Unfill.count;
Account1.OrderCancel(Bnum);
}
if (Sx > 0)
Account1.OrderBuy(Main.GetOrderCode(MarketData1.code),Sv, MarketData1.current+MarketData1.GetTickSize()*5, 0);
}
}
function Main_OnOrderResponse(OrderResponse)
{
if (OrderResponse.orderID == BID)
Bnum = OrderResponse.orderNum;
if (OrderResponse.orderID == SID)
Snum = OrderResponse.orderNum;
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
//15시15분
if (nEventID == 1 && HHMMSS >= 151500)
{
Main.KillTimer(1);
Account1.SetBalance(Main.GetOrderCode(MarketData1.code), 0);
if (Account1.Balance.position == 1)
Account1.OrderBuy(Account1.Balance.code,Account1.Balance.count,0,1);
if (Account1.Balance.position == 2)
Account1.OrderSell(Account1.Balance.code,Account1.Balance.count,0,1);
}
}
즐거운 하루되세요
> sonamoo 님이 쓴 글입니다.
> 제목 : 수식문의
> 안녕하세요?
지금 예스트레이더로 자동거래를 하고 있습니다. 현재 예스트레이더로부터 발생하는 신호를 바탕으로 예스스팟 거래를 하려고 합니다. 수식 부탁드립니다.
===================
1.예스트레이더에서 매수신호 발생시 선물매수
2.예스트레이더에서 매수청산신호 발생시 선물 매수분 청산
3.예스트레이더에서 매도신호 발생시 선물매도
4.예스트레이더에서 매도청산신호 발생시 선물 매도분 청산
5.장시작 30초후에 계좌잔고 리플레쉬합니다.
6.선물 매수 매도시 수량은
Value = GetUnclearedDeposits("0000-0000-31");
Value99 = max(1,int(value/max((c*75000),20000000)));
의 벨류99값으로 합니다.
7.15시 6분까지 매수 또는 매도 잔고가 있는 경우 15시 15분에 동시호가 청산합니다.
8.매수나 매도 진입가격은 신호발생 현재가+-5호가로 주문을 넣습니다.
9.청산시에는 미체결 수량 존재시 미체결 수량은 주문취소를 먼저하고 잔고 수량을 청산합니다.
=================
미리감사드립니다.