커뮤니티

행복; 수식 작성 바랍니다

프로필 이미지
행복한가방
2013-12-28 03:15:52
285
글번호 70874
답변완료
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다 시스템식 작성 바랍니다 ==================================================================== < 현대차 주가 > 일자 종가 대비 대비율 거래량 ---------- ------- ----- ------- --------- 2013/12/26 225,500 -500 -0.22% 372,399 2013/12/24 226,000 -2,500 -1.09% 390,524 2013/12/23 228,500 4,000 1.78% 526,734 2013/12/20 224,500 4,000 1.81% 609,925 2013/12/19 220,500 -7,000 -3.08% 1,119,205 2013/12/18 227,500 500 0.22% 957,351 2013/12/17 227,000 -1,000 -0.44% 1,243,467 2013/12/16 228,000 -3,500 -1.51% 389,360 2013/12/13 231,500 1,500 0.65% 676,239 2013/12/12 230,000 1,000 0.44% 826,526 2013/12/11 229,000 500 0.22% 608,863 2013/12/10 228,500 -1,500 -0.65% 544,323 2013/12/09 230,000 0.00% 514,208 2013/12/06 230,000 -2,500 -1.08% 452,464 2013/12/05 232,500 -500 -0.21% 791,121 2013/12/04 233,000 -6,000 -2.51% 706,716 2013/12/03 239,000 -10,500 -4.21% 880,074 ======================================================== 상기에 있는 현대차 주가를 기초로 질문을 드리겠습니다 << 시스템식 조건 >> =================== 주기; 일봉 < 매수 조건 > 가. 매수하는 오늘을 D 데이 라고 할 때 나. 주식을 보유하지 않은 상태에서 D 데이의 주가가 상승하지 않으면( C <= C[1] ) 다. 당일 D 데이의 거래량(V)의 1만 분의 1 만큼 종가에 진입한다 < 매도 조건 > 가. 매수 다음날인 D+1 데이부터, - 주식을 보유한 상태에서 주가가 상승하지 않은 날은 - 해당 일 거래량(V)의 1만 분의 1 만큼만 보유하다가 (이를 풀어서 설명하면; 전일 거래량의 1만분의 1 보다 오늘 거래량의 1만 분의 1 이 적으면 그 차이만큼 청산을 하고 전일 거래량의 1만분의 1 보다 오늘 거래량의 1만 분의 1 이 크면 그 차이만큼 매수를 하여 항상 당일 거래량의 1만분의 1 만큼 보유수량을 유지하는 것입니다) - 그러나 주식을 보유한 상태에서 주가가 상승한 날은( C > C[1] ) - 종가에 보유수량을 전량 청산합니다 예1) (현대차의 예를 들면,) 주가가 상승하지 않은 12월 3일에 88주를(해당 일 거래량 880,074주의 1만분의 1) 매수하여 보유를 하다가, 주가가 상승하지 않은 12월 4일에는 18주를 청산하여 70주만(해당 일 거래량 706,716주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 5일에는 9주를 매수하여 79주만(해당 일 거래량 791,121주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 6일에는 34주를 청산하여 45주만(해당 일 거래량 452,464주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 9일에는 6주를 매수하여 51주만(해당 일 거래량 514,208주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 10일에는 3주를 매수하여 54주만(해당 일 거래량 544,323주의 1만분의 1) 보유하고, 주가가 상승한 12월 11일에는 12월 10일에 보유하였던 54주를 종가에 전량 청산합니다 예2) 주가가 상승하지 않은 12월 16일에 38주를(해당 일 거래량 389,360주의 1만분의 1) 매수하여 보유를 하다가, 주가가 상승하지 않은 12월 17일에는 86주를 매수하여 124주만(해당 일 거래량 1,243,467주의 1만분의 1) 보유하고, 주가가 상승한 12월 18일에는 12월 17일에 보유하였던 124주를 종가에 전량 청산합니다 상기 조건의 시스템식을 아래와 같이 작성을 하였습니다 << 시스템식 식 >> ================= if CodeCategoryEx == 11 and BasePrice < 50000 Then var1 = int(int(Volume*0.0001)/10)*10; Else var1 = int(Volume*0.0001); // Var1 은 당일 거래량의 1만분지 1의 수량 if MarketPosition == 0 and C <= C[1] Then // 보유잔고가 없을 때 주가가 상승하지 않으면 buy("b1",OnClose,def,var1); // 종가에 Var1 수량만큼 종가에 매수하고 if MarketPosition == 1 and C <= C[1] Then { // 보유잔고가 있고 주가가 상승하지 않은 상태에서 If Var1 > Var1[1] Then // 당일의 Var1 이 전일의 Var1 보다 크면 Var2 = var1-Var1[1] ; // 그 차이를 Var2 라 하고 buy("b2",OnClose,def,Var2); // 그 차이인 Var2 수량만큼 종가에 매수합니다 If Var1 <= Var1[1] Then // 만약 당일의 Var1 이 전일의 Var1 보다 작으면 Var3 = var1[1]-Var1 ; // 그 차이를 Var3 라 하고 ExitLong("e",OnClose,def,Var3); // 그 차이인 Var3 수량만큼 종가에 청산합니다 // 이것은 당일 보유잔고 수량을 당일 거래량의 1만분지 1만큼만 유지하기 위해서 입니다 } if MarketPosition == 1 and C > C[1] Then // 보유잔고가 있고 주가가 상승하면 ExitLong("bx",OnClose); // 보유잔고 전량을 청산합니다 수식이 틀린 것 같습니다 바로잡아 주시기 바랍니다 감사합니다
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-12-30 11:18:24

안녕하세요 예스스탁입니다. 수정한 식입니다. if문에 포함된 실행문이 2개 이상이면 하상 중괄호{}로 묶어주셔야 합니다. 청산함수는 5번째 매개변수가 수량이며 수량옵션도 지정하셔야 합니다. if CodeCategoryEx == 11 and BasePrice < 50000 Then var1 = int(int(Volume*0.0001)/10)*10; Else var1 = int(Volume*0.0001); // Var1 은 당일 거래량의 1만분지 1의 수량 if MarketPosition == 0 and C <= C[1] Then // 보유잔고가 없을 때 주가가 상승하지 않으면 buy("b1",OnClose,def,var1); // 종가에 Var1 수량만큼 종가에 매수하고 if MarketPosition == 1 and C <= C[1] Then { // 보유잔고가 있고 주가가 상승하지 않은 상태에서 If Var1 > Var1[1] Then{ // 당일의 Var1 이 전일의 Var1 보다 크면 Var2 = var1-Var1[1] ; // 그 차이를 Var2 라 하고 buy("b2",OnClose,def,Var2); // 그 차이인 Var2 수량만큼 종가에 매수합니다 } If Var1 < Var1[1] Then{ // 만약 당일의 Var1 이 전일의 Var1 보다 작으면 Var3 = var1[1]-Var1 ; // 그 차이를 Var3 라 하고 ExitLong("e",OnClose,def,"",Var3,2); // 그 차이인 Var3 수량만큼 종가에 청산합니다 } // 이것은 당일 보유잔고 수량을 당일 거래량의 1만분지 1만큼만 유지하기 위해서 입니다 } if MarketPosition == 1 and C > C[1] Then // 보유잔고가 있고 주가가 상승하면 ExitLong("bx",OnClose); // 보유잔고 전량을 청산합니다 새해 복 많이 받으세요 > 행복한가방 님이 쓴 글입니다. > 제목 : 행복; 수식 작성 바랍니다 > 한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다 시스템식 작성 바랍니다 ==================================================================== < 현대차 주가 > 일자 종가 대비 대비율 거래량 ---------- ------- ----- ------- --------- 2013/12/26 225,500 -500 -0.22% 372,399 2013/12/24 226,000 -2,500 -1.09% 390,524 2013/12/23 228,500 4,000 1.78% 526,734 2013/12/20 224,500 4,000 1.81% 609,925 2013/12/19 220,500 -7,000 -3.08% 1,119,205 2013/12/18 227,500 500 0.22% 957,351 2013/12/17 227,000 -1,000 -0.44% 1,243,467 2013/12/16 228,000 -3,500 -1.51% 389,360 2013/12/13 231,500 1,500 0.65% 676,239 2013/12/12 230,000 1,000 0.44% 826,526 2013/12/11 229,000 500 0.22% 608,863 2013/12/10 228,500 -1,500 -0.65% 544,323 2013/12/09 230,000 0.00% 514,208 2013/12/06 230,000 -2,500 -1.08% 452,464 2013/12/05 232,500 -500 -0.21% 791,121 2013/12/04 233,000 -6,000 -2.51% 706,716 2013/12/03 239,000 -10,500 -4.21% 880,074 ======================================================== 상기에 있는 현대차 주가를 기초로 질문을 드리겠습니다 << 시스템식 조건 >> =================== 주기; 일봉 < 매수 조건 > 가. 매수하는 오늘을 D 데이 라고 할 때 나. 주식을 보유하지 않은 상태에서 D 데이의 주가가 상승하지 않으면( C <= C[1] ) 다. 당일 D 데이의 거래량(V)의 1만 분의 1 만큼 종가에 진입한다 < 매도 조건 > 가. 매수 다음날인 D+1 데이부터, - 주식을 보유한 상태에서 주가가 상승하지 않은 날은 - 해당 일 거래량(V)의 1만 분의 1 만큼만 보유하다가 (이를 풀어서 설명하면; 전일 거래량의 1만분의 1 보다 오늘 거래량의 1만 분의 1 이 적으면 그 차이만큼 청산을 하고 전일 거래량의 1만분의 1 보다 오늘 거래량의 1만 분의 1 이 크면 그 차이만큼 매수를 하여 항상 당일 거래량의 1만분의 1 만큼 보유수량을 유지하는 것입니다) - 그러나 주식을 보유한 상태에서 주가가 상승한 날은( C > C[1] ) - 종가에 보유수량을 전량 청산합니다 예1) (현대차의 예를 들면,) 주가가 상승하지 않은 12월 3일에 88주를(해당 일 거래량 880,074주의 1만분의 1) 매수하여 보유를 하다가, 주가가 상승하지 않은 12월 4일에는 18주를 청산하여 70주만(해당 일 거래량 706,716주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 5일에는 9주를 매수하여 79주만(해당 일 거래량 791,121주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 6일에는 34주를 청산하여 45주만(해당 일 거래량 452,464주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 9일에는 6주를 매수하여 51주만(해당 일 거래량 514,208주의 1만분의 1) 보유하고, 주가가 상승하지 않은 12월 10일에는 3주를 매수하여 54주만(해당 일 거래량 544,323주의 1만분의 1) 보유하고, 주가가 상승한 12월 11일에는 12월 10일에 보유하였던 54주를 종가에 전량 청산합니다 예2) 주가가 상승하지 않은 12월 16일에 38주를(해당 일 거래량 389,360주의 1만분의 1) 매수하여 보유를 하다가, 주가가 상승하지 않은 12월 17일에는 86주를 매수하여 124주만(해당 일 거래량 1,243,467주의 1만분의 1) 보유하고, 주가가 상승한 12월 18일에는 12월 17일에 보유하였던 124주를 종가에 전량 청산합니다 상기 조건의 시스템식을 아래와 같이 작성을 하였습니다 << 시스템식 식 >> ================= if CodeCategoryEx == 11 and BasePrice < 50000 Then var1 = int(int(Volume*0.0001)/10)*10; Else var1 = int(Volume*0.0001); // Var1 은 당일 거래량의 1만분지 1의 수량 if MarketPosition == 0 and C <= C[1] Then // 보유잔고가 없을 때 주가가 상승하지 않으면 buy("b1",OnClose,def,var1); // 종가에 Var1 수량만큼 종가에 매수하고 if MarketPosition == 1 and C <= C[1] Then { // 보유잔고가 있고 주가가 상승하지 않은 상태에서 If Var1 > Var1[1] Then // 당일의 Var1 이 전일의 Var1 보다 크면 Var2 = var1-Var1[1] ; // 그 차이를 Var2 라 하고 buy("b2",OnClose,def,Var2); // 그 차이인 Var2 수량만큼 종가에 매수합니다 If Var1 <= Var1[1] Then // 만약 당일의 Var1 이 전일의 Var1 보다 작으면 Var3 = var1[1]-Var1 ; // 그 차이를 Var3 라 하고 ExitLong("e",OnClose,def,Var3); // 그 차이인 Var3 수량만큼 종가에 청산합니다 // 이것은 당일 보유잔고 수량을 당일 거래량의 1만분지 1만큼만 유지하기 위해서 입니다 } if MarketPosition == 1 and C > C[1] Then // 보유잔고가 있고 주가가 상승하면 ExitLong("bx",OnClose); // 보유잔고 전량을 청산합니다 수식이 틀린 것 같습니다 바로잡아 주시기 바랍니다 감사합니다