커뮤니티
문의드립니다.
2017-02-06 19:58:42
109
글번호 106575
여러개의 진입신호가 합성된 시스템에서 특정신호(진입명)만 당일 1번만 발생하게 만드는 조건식이 궁급합니다.
제가 배운 2가지 조건식으로 시도해봤는데, 다른 신호들과 간섭이 발생해서 나타날 자리에 나타나지 않는 경우가 생기네요;;;
아래는 제가 사용해본 조건식입니다.
if Bdate != Bdate[1] Then
T1 = TotalTrades;
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
if entry < 1 then{
if MarketPosition == 0 then
if Crossup(A,B)
------------------------------------------
if date != date[1] then{
Bcnt = 0;
Scnt = 0;
}
if marketposition == -1 and marketposition != marketposition[1] then
Scnt = Scnt+1;
if Scnt < 1 and Crossup(A,B)
If Scnt < 1 and
답변 1
예스스탁 예스스탁 답변
2017-02-07 11:45:39
안녕하세요
예스스탁입니다.
올려주신 식은 전체진입의 횟수나 매수나 매도별로 진입을 카운트하는 내용입니다.
하나의 수식안의 여러 buy나 sell중에 특정신호는
한번만 진입되게 하려면 이름으로 체크하셔야 합니다.
var : B1count(0);
if Bdate != Bdate[1] Then
B1count = 0;
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "B1" Then
B1count = B1count+1;
if B1count < 1 and 매수조건1 Then
buy("B1");
if 매수조건2 Then
buy("B2");
if 매수조건3 Then
buy("B3");
즐거운 하루되세요
> 맘속의행복 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 여러개의 진입신호가 합성된 시스템에서 특정신호(진입명)만 당일 1번만 발생하게 만드는 조건식이 궁급합니다.
제가 배운 2가지 조건식으로 시도해봤는데, 다른 신호들과 간섭이 발생해서 나타날 자리에 나타나지 않는 경우가 생기네요;;;
아래는 제가 사용해본 조건식입니다.
if Bdate != Bdate[1] Then
T1 = TotalTrades;
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
if entry < 1 then{
if MarketPosition == 0 then
if Crossup(A,B)
------------------------------------------
if date != date[1] then{
Bcnt = 0;
Scnt = 0;
}
if marketposition == -1 and marketposition != marketposition[1] then
Scnt = Scnt+1;
if Scnt < 1 and Crossup(A,B)
If Scnt < 1 and
다음글
이전글