커뮤니티

문의합니다.

프로필 이미지
마코
2013-12-31 11:54:07
184
글번호 70949
답변완료
수고 많으십니다. 어제 작성해주신 수식을 대입해보니 조건이 성립하면 진입하는 것 까지는 좋은데, 익절을 걸어놓았을 시 익절을 하고 다시 매수조건이 성립하면 다시 청산포인트에 재매수가 들어가더라고요. 재매수가 되지 않게 수정 부탁드립니다. 감사합니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then buy(); Else sell(); } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000);
시스템
답변 4
프로필 이미지

그리움

2013-12-31 12:12:49

dayentry 값을 1로 바꾸시면 됩니다. ( 하루 1회만 진입한다의 의미임 ) 청산하고 재진입이 불가해야 하기를 원하시니 1회만 진입이 맞음. > 마코 님이 쓴 글입니다. > 제목 : 문의합니다. > 수고 많으십니다. 어제 작성해주신 수식을 대입해보니 조건이 성립하면 진입하는 것 까지는 좋은데, 익절을 걸어놓았을 시 익절을 하고 다시 매수조건이 성립하면 다시 청산포인트에 재매수가 들어가더라고요. 재매수가 되지 않게 수정 부탁드립니다. 감사합니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then buy(); Else sell(); } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000);
프로필 이미지

마코

2013-12-31 12:57:38

하루 1회만 진입을 하게하면, 첫 진입을 한 후 다음 신호 발생시에 진입을 못하게 되지 않을까요 제가 원하는건 매수 조건이 만족해서 매수 진입을 했으면, 손익절을 하든 안하든 매도 조건이 성립하기 전까지 매수 재진입을 하지 않는것이라서.. > 그리움 님이 쓴 글입니다. > 제목 : Re : 문의합니다. > dayentry 값을 1로 바꾸시면 됩니다. ( 하루 1회만 진입한다의 의미임 ) 청산하고 재진입이 불가해야 하기를 원하시니 1회만 진입이 맞음. > 마코 님이 쓴 글입니다. > 제목 : 문의합니다. > 수고 많으십니다. 어제 작성해주신 수식을 대입해보니 조건이 성립하면 진입하는 것 까지는 좋은데, 익절을 걸어놓았을 시 익절을 하고 다시 매수조건이 성립하면 다시 청산포인트에 재매수가 들어가더라고요. 재매수가 되지 않게 수정 부탁드립니다. 감사합니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then buy(); Else sell(); } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000);
프로필 이미지

그리움

2013-12-31 13:37:37

[설명] 하루에 매매횟수를 매수와 매도 각각 N회 씩으로 제한하는 시스템식입니다. 이동평균 상향돌파하면 매수진입. 이동평균 하향이탈하면 매도진입 1포인트 손절, 1포인트 목표수익, 15시 당일청산 [시스템식] input : buyN(1),SellN(1); var : cnt(0),BCount(0),SCount(0); BCount = 0 ; SCount = 0 ; for cnt = 0 to 10 { if EntryDate(cnt) == sdate and MarketPosition(cnt) == 1 then BCount = BCount + 1; if EntryDate(cnt) == sdate and MarketPosition(cnt) == -1 then SCount = SCount + 1; } value1 = ma(c,20); if crossup(c,value1) and BCount < BuyN Then Buy("매수진입"); if CrossDown(c,value1) and SCount < SellN Then Sell("매도진입"); if MarketPosition == 1 and CrossDown(c,value1) Then ExitLong("매수청산"); if MarketPosition == -1 and CrossUp(c,value1) Then ExitShort("매도청산"); #손절 1포인트 SetStoploss(1,PointStop); #목표수익 1포인트 SetStopProfittarget(1,PointStop); #당일15시 청산 SetStopEndofday(150000); > 마코 님이 쓴 글입니다. > 제목 : Re : Re : 문의합니다. > 하루 1회만 진입을 하게하면, 첫 진입을 한 후 다음 신호 발생시에 진입을 못하게 되지 않을까요 제가 원하는건 매수 조건이 만족해서 매수 진입을 했으면, 손익절을 하든 안하든 매도 조건이 성립하기 전까지 매수 재진입을 하지 않는것이라서.. > 그리움 님이 쓴 글입니다. > 제목 : Re : 문의합니다. > dayentry 값을 1로 바꾸시면 됩니다. ( 하루 1회만 진입한다의 의미임 ) 청산하고 재진입이 불가해야 하기를 원하시니 1회만 진입이 맞음. > 마코 님이 쓴 글입니다. > 제목 : 문의합니다. > 수고 많으십니다. 어제 작성해주신 수식을 대입해보니 조건이 성립하면 진입하는 것 까지는 좋은데, 익절을 걸어놓았을 시 익절을 하고 다시 매수조건이 성립하면 다시 청산포인트에 재매수가 들어가더라고요. 재매수가 되지 않게 수정 부탁드립니다. 감사합니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then buy(); Else sell(); } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000);
프로필 이미지

예스스탁 예스스탁 답변

2014-01-02 18:44:23

안녕하세요 예스스탁입니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then{ if count == 0 or (count >= 1 and MarketPosition == -1) Or (Count >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) Then{ buy(); } } Else{ if count == 0 or (count >= 1 and MarketPosition == 1) Or (Count >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) Then{ sell(); } } } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000); 즐거운 하루되세요 > 마코 님이 쓴 글입니다. > 제목 : 문의합니다. > 수고 많으십니다. 어제 작성해주신 수식을 대입해보니 조건이 성립하면 진입하는 것 까지는 좋은데, 익절을 걸어놓았을 시 익절을 하고 다시 매수조건이 성립하면 다시 청산포인트에 재매수가 들어가더라고요. 재매수가 되지 않게 수정 부탁드립니다. 감사합니다. input : dayentry(8),loss(0.4),Profit(0.6); var : X(0),W(0),cnt(0),count(0); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if date != date[1] Then Condition1 = False; X=MIN(T1, T2, T3, T4); if T5[1]<T5 Then{ Condition1 = true; W = X; } Else W = T5; if count < dayentry and Condition1 == true Then{ if T1 > W Then buy(); Else sell(); } SetStopProfittarget(Profit,PointStop); SetStopLoss(loss,PointStop); SetStopEndofday(150000);