커뮤니티

MarketData1 옵션 매수 다운하이, 하이다운하이

프로필 이미지
좌오비우오비
2024-11-15 09:56:45.0
668
글번호 226072
답변완료
MarketData1에 옵션종목 1개를 선정하여 진입하는 수식입니다. 요청수식 1. 시작 084500 우선순위 1 : 가격이 1.00 보다 작아지고 우선순위 2 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 요청수식 2. 시작 084500 우선순위 1 : 가격이 1.50 보다 커지고 우선순위 2 : 가격이 1.00 보다 작아지고 우선순위 3 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 수식 부탁드립니다.
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2024-08-22 15:32:44.0

안녕하세요 예스스탁입니다. 아래내용 참고하시기 바랍니다. 영문 업데이트가 게시판 금칙어라 중간에 *이 추가되어 있습니다. 제거하고 사용하시기 바랍니다. 1 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 2; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 4 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (OrderResponse.orderID == BID) { T = 3; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == BNUM) { T = 4; AA = NotifyFill.fillPrice; } } 2 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 >= 1.5 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 2; } if (T == 2 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 3; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 5 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (T == 3 && OrderResponse.orderID == BID) { T = 4; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (T == 4 && NotifyFill.orderNum == BNUM) { T = 5; AA = NotifyFill.fillPrice; } } 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : MarketData1 지정 > MarketData1에 옵션종목 1개를 선정하여 진입하는 수식입니다. 요청수식 1. 시작 084500 우선순위 1 : 가격이 1.00 보다 작아지고 우선순위 2 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 요청수식 2. 시작 084500 우선순위 1 : 가격이 1.50 보다 커지고 우선순위 2 : 가격이 1.00 보다 작아지고 우선순위 3 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 수식 부탁드립니다.
프로필 이미지

좌오비우오비

2024-08-23 14:40:55.0

답변 고맙습니다. 시작시간설정이 없는데 시간을 설정하면 그때부터 계산하는 방식을 원합니다. 예를 들어 084500 설정이면 그 때부터 가격 down up(1번 수식), up down up(2번 수식)을 계산했으면 합니다. 103000 설정이면 그 때부터 가격 down up(1번 수식), up down up(2번 수식)을 계산했으면 합니다. 항상 고맙습니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : MarketData1 지정 > 안녕하세요 예스스탁입니다. 아래내용 참고하시기 바랍니다. 영문 업데이트가 게시판 금칙어라 중간에 *이 추가되어 있습니다. 제거하고 사용하시기 바랍니다. 1 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 2; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 4 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (OrderResponse.orderID == BID) { T = 3; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == BNUM) { T = 4; AA = NotifyFill.fillPrice; } } 2 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 >= 1.5 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 2; } if (T == 2 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 3; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 5 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (T == 3 && OrderResponse.orderID == BID) { T = 4; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (T == 4 && NotifyFill.orderNum == BNUM) { T = 5; AA = NotifyFill.fillPrice; } } 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : MarketData1 지정 > MarketData1에 옵션종목 1개를 선정하여 진입하는 수식입니다. 요청수식 1. 시작 084500 우선순위 1 : 가격이 1.00 보다 작아지고 우선순위 2 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 요청수식 2. 시작 084500 우선순위 1 : 가격이 1.50 보다 커지고 우선순위 2 : 가격이 1.00 보다 작아지고 우선순위 3 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 수식 부탁드립니다.
프로필 이미지

예스스탁 예스스탁 답변

2024-08-23 13:58:13.0

안녕하세요 예스스탁입니다. 1 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 <= 1.0 && MarketData1.time >= 1030000000 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time >= 1030000000 && MarketData1.time < 1515000000) { T = 2; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 4 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (OrderResponse.orderID == BID) { T = 3; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == BNUM) { T = 4; AA = NotifyFill.fillPrice; } } 2 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 >= 1.5 && MarketData1.time >= 1030000000 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 <= 1.0 && MarketData1.time >= 1030000000 && MarketData1.time < 1515000000) { T = 2; } if (T == 2 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time >= 1030000000 && MarketData1.time < 1515000000) { T = 3; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 5 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (T == 3 && OrderResponse.orderID == BID) { T = 4; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (T == 4 && NotifyFill.orderNum == BNUM) { T = 5; AA = NotifyFill.fillPrice; } } 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : 계산하는 시작시간 설정 > 답변 고맙습니다. 시작시간설정이 없는데 시간을 설정하면 그때부터 계산하는 방식을 원합니다. 예를 들어 084500 설정이면 그 때부터 가격 down up(1번 수식), up down up(2번 수식)을 계산했으면 합니다. 103000 설정이면 그 때부터 가격 down up(1번 수식), up down up(2번 수식)을 계산했으면 합니다. 마지막으로 151500 에 잔고 청산하는 내용도 부탁드립니다. 항상 고맙습니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : MarketData1 지정 > 안녕하세요 예스스탁입니다. 아래내용 참고하시기 바랍니다. 영문 업데이트가 게시판 금칙어라 중간에 *이 추가되어 있습니다. 제거하고 사용하시기 바랍니다. 1 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 2; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 4 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (OrderResponse.orderID == BID) { T = 3; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (NotifyFill.orderNum == BNUM) { T = 4; AA = NotifyFill.fillPrice; } } 2 var T,C1,C2,AA; var BID,BNUM; function Main_OnStart() { T = 0; } function Main_OnUp*dateMarket(sItemCode, lUp*dateID) //*제거 { if (lUp*dateID == 20001)//*제거 { C2 = C1; C1 = MarketData1.current if (T == 0 && C2 > 0 && C1 >= 1.5 && MarketData1.time < 1515000000) { T = 1; } if (T == 1 && C2 > 0 && C1 <= 1.0 && MarketData1.time < 1515000000) { T = 2; } if (T == 2 && C2 > 0 && C1 >= 1.01 && C2 < 1.01 && MarketData1.time < 1515000000) { T = 3; BID = Account1.OrderBuy(MarketData1.code, 1, MarketData1.Ask(5), 0); } if (T == 5 && AA > 0) { if (C1 >= AA+1.0 || C1 <= AA-0.5 || MarketData1.time >= 1515000000) { T = -1; Account1.OrderSell(MarketData1.code, 1, MarketData1.Bid(5), 0); } } } } function Main_OnOrderResponse(OrderResponse) { if (T == 3 && OrderResponse.orderID == BID) { T = 4; BNUM = OrderResponse.orderNum; } } function Main_OnNotifyFill(NotifyFill) { if (T == 4 && NotifyFill.orderNum == BNUM) { T = 5; AA = NotifyFill.fillPrice; } } 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : MarketData1 지정 > MarketData1에 옵션종목 1개를 선정하여 진입하는 수식입니다. 요청수식 1. 시작 084500 우선순위 1 : 가격이 1.00 보다 작아지고 우선순위 2 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 요청수식 2. 시작 084500 우선순위 1 : 가격이 1.50 보다 커지고 우선순위 2 : 가격이 1.00 보다 작아지고 우선순위 3 : 가격이 1.01 보다 커지면 매수 1계약 지정가 상대5호가 익절 1.00, 손절 0.50 1번 진입하고 1번 청산하면 추가 진입금지 endofday 151500 주의점 : 계좌에는 다른 전략의 미결제들도 있으므로 그것들과 구별하여 청산함. 수식 부탁드립니다.