커뮤니티

문의합니다

프로필 이미지
돌아온스머프
2018-07-06 18:53:54
194
글번호 120336
답변완료

첨부 이미지

var : Buyentry(false); BW_SEVEN = value; if BW_SEVEN >= 7 and BW_SEVEN[1] < 7 Then { T1 = 2; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN < 7 and BW_SEVEN[1] == 7 Then { T1 = 1; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN <= -7 and BW_SEVEN[1] > -7 Then { T1 = -2; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN > -7 and BW_SEVEN[1] == -7 Then { T1 = -1; T2 = T1[1]; T3 = T2[1]; } var1 = ma(c,5); var2 = ma(C,20); Condition1 = T1 != T1[1] and T1 == 2 and T2 == 1 and T3 == 2 and CrossUp(var1,var2); if T != T1[1] and T1 == 2 and T2 == -1 Then Buyentry = true; if MarketPosition <= 0 and C > O and Condition1[1] == true Then buy(); if MarketPosition == 1 then { BuyEntry = false; } 1. 시스템 정말 많은 도움이 됐습니다 그런데 한가지 잘못질문한것이 있는듯해서요 바이너리가 2번째에만 매매를 하고 싶습니다 매번이 아니라.... 다시말해 바이너리가 7을 찍고 -7을 찍지 않고 다시올라가서 7을 찍으면 그때부터 매수(5이평선이 20이평선을 골드크로스)를 하고 다시 7이하로 내려오면 이후에는 매매하지 않고 -7을 찍고 다시 7을 찍고 다시한번 7을 내려가고 -7을 찍지 않고 다시 7을 올라오면 그때 매수(5이평선이 20이평선을 골드크로스)를 하고 제가 말주변이 없어 이렇게 표현을 하네요.... 그림으로 첨부했습니다 if (TotalTrades == 0 or (TotalTrades >= 1 and var1 == 1 )) and A 수식 then buy("A 매수"); if (TotalTrades == 0 or (TotalTrades >= 1 and var1 == 2)) and B 수식 Then buy("B 매수"); if (TotalTrades == 0 or (TotalTrades >= 1 and var1 == 3)) and C 수식 Then sell("C 매도"); if (TotalTrades == 0 or (TotalTrades >= 1 and var1 == 4)) and D 수식 Then sell("D 매도"); 청산식 #청산완료 if TotalTrades > TotalTrades[1] then { var1 = 0; var2 = 0; if IsEntryName("A 매수",1) == true Then { if PositionProfit(1) > 0 then var1 == 2; else var1 == 4; } if IsEntryName("C 매도",1) == true then { if PositionProfit(1) > 0 Then var1 == 4; Else var1 == 2; } if IsEntryName("B 매수",1) == true then { if PositionProfit(1) > 0 Then { var1 == 1; var1 == 3; } Else { var1 == 1; var1 == 3; } } if IsEntryName("D 매도",1) == true then { if PositionProfit(1) > 0 Then { var1 == 1; var1 == 3; } Else { var1 == 1; var1 == 3; } } } 2.위의 식은 A 매수해서 이익이나면 B 매수로 손실이나면 D 매도로 진입하고 C 매도해서 이익이나면 D 매도료 손실이나면 B 매수로 진입하고 C 매수해서 이익과 손실이나도 A 매수나 C 매도나 빠른신호로 진입하고 D 매도해서 이익과 손실이나도 A 매수나 C 매도나 빠른신호로 진입하라라고 만든 함수인데 원하는데로 신호가 안나오네요 수정 부탁드립니다 감사합니다 늘 승리하세요
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2018-07-06 18:18:41

안녕하세요 예스스탁입니다. Input: shortPeriod(12), longPeriod(26), Period(9), maPeriod(20), ROCPeriod(12), stoPeriod1(5), stoPeriod2(3), CCIPeriod(9); var: value(0),BW_SEVEN(0),T1(0),T2(0),T3(0); //문장1 : MACD가 MACD 시그널선 보다 큼 if ema(C,shortPeriod)-ema(C,longPeriod) >= ema(ema(C,shortPeriod)-ema(C,longPeriod),Period) then value = 1; else value = -1; //문장2 : 종가가 이동평균선보다 큼 if C >= ma(C, maPeriod) then value = value + 1; else value = value - 1; //문장3 : Price ROC가 0선보다 큼 if (C - C[ROCPeriod]) / C[ROCPeriod] * 100 >= 0 then value = value + 1; else value = value - 1; //문장4 : StochasticsK선이 50선 보다 큼 if ema((C-lowest(L, stoPeriod1)) / (highest(H, stoPeriod1) - lowest(L, stoPeriod1)) * 100, stoPeriod2)>=50 then value = value + 1; else value = value - 1; //CCI가 0선 보다 큼 if CCI(CCIPeriod) > 0 then value = value + 1; else value = value - 1; //CO가 0선 보다 큼 if ema(accum(((C -L)-(H- C))/ (H-L)*V), 3) - ema(accum(((C -L)-(H- C))/(H-L)*V), 10) >=0 then value = value + 1; else value = value - 1; //문장7 : 종가가 파라볼릭보다 큼 if SAR(0.02,0.2) < C then value = value + 1; else value = value - 1; var : BuyEntry(false),count(0),T(0); BW_SEVEN = value; if BW_SEVEN == 7 Then { T = 1; } if BW_SEVEN == -7 Then { T = -1; } if T == -1 Then count = 0; if T == 1 and T[1] == -1 Then { count = 1; BuyEntry = true; } if T == 1 and T[1] == 1 and BW_SEVEN == 7 and BW_SEVEN[1] < 7 Then count = count+1; var1 = ma(c,5); var2 = ma(C,20); if BuyEntry == true and BW_SEVEN == 7 and count == 2 and crossup(var1,var2) Then buy(); if MarketPosition == 1 Then BuyEntry = false; 즐거운 하루되세요 > 돌아온스머프 님이 쓴 글입니다. > 제목 : 문의합니다 > var : Buyentry(false); BW_SEVEN = value; if BW_SEVEN >= 7 and BW_SEVEN[1] < 7 Then { T1 = 2; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN < 7 and BW_SEVEN[1] == 7 Then { T1 = 1; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN <= -7 and BW_SEVEN[1] > -7 Then { T1 = -2; T2 = T1[1]; T3 = T2[1]; } if BW_SEVEN > -7 and BW_SEVEN[1] == -7 Then { T1 = -1; T2 = T1[1]; T3 = T2[1]; } var1 = ma(c,5); var2 = ma(C,20); Condition1 = T1 != T1[1] and T1 == 2 and T2 == 1 and T3 == 2 and CrossUp(var1,var2); if T != T1[1] and T1 == 2 and T2 == -1 Then Buyentry = true; if MarketPosition <= 0 and C > O and Condition1[1] == true Then buy(); if MarketPosition == 1 then { BuyEntry = false; } 시스템 정말 많은 도움이 됐습니다 그런데 한가지 잘못질문한것이 있는듯해서요 바이너리가 2번째에만 매매를 하고 싶습니다 매번이 아니라.... 다시말해 바이너리가 7을 찍고 -7을 찍지 않고 다시올라가서 7을 찍으면 그때부터 매수(5이평선이 20이평선을 골드크로스)를 하고 다시 7이하로 내려오면 이후에는 매매하지 않고 -7을 찍고 다시 7을 찍고 다시한번 7을 내려가고 -7을 찍지 않고 다시 7을 올라오면 그때 매수(5이평선이 20이평선을 골드크로스)를 하고 제가 말주변이 없어 이렇게 표현을 하네요.... 그림으로 첨부했습니다 감사합니다 행복한 주말 보내세요