커뮤니티
부탁합니다.
2019-06-05 10:40:30
234
글번호 129200
Input : Period(20), MultiD(2),수량(10);
var : MAv(0),BBup(0),BBdn(0);
Var : value(0),vol(0);
MAv = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
if MarketPosition != 0 Then{
if PositionProfit < 0 Then
Vol = MaxContracts+1;
Else
vol = 1;
}
if MarketPosition == 0 Then{
if PositionProfit(1) < 0 Then
Vol = MaxContracts(1)+1;
Else
vol = 1;
}
if MarketPosition <= 0 Then
if crossup(c,bbup+1) Then
buy("b1",OnClose,def,Floor(최대수량*0.5));
if MarketPosition <= 0 Then
if crossup(c,bbup-0) Then
buy("b2",OnClose,def,Floor(최대수량*0.5));
매도반대
위수식에 문제가 있는지 두번에 나누어 매매가 안됨니다.
즉 B1에50% 매수하고 B2에 나머지50% 매매한다.
부탁합니다.
감사합니다.
답변 1
예스스탁 예스스탁 답변
2019-06-05 11:45:13
안녕하세요
예스스탁입니다.
조건 중에 MarketPosition <= 0은
현재봉이 무포지션이거나 매도포지션일때를 의미합니다.
즉 매수진입 첫신호를 지정할때 사용되는 조건입니다.
추가진입은 매수포지션 상태에서 발생하는 내용이므로
b2의 조건을 MarketPosition == 1이라는 조건이 되어야 합니다.
또한 피라미딩(중복진입)은 설정창에서 피라미딩을 설정하셔야 합니다.
피라미딩을 다른진입신호만 허용으로 설정하고 적용하셔야 합니다.
즐거운 하루되세요
> 큰바위얼굴 님이 쓴 글입니다.
> 제목 : 부탁합니다.
> Input : Period(20), MultiD(2),수량(10);
var : MAv(0),BBup(0),BBdn(0);
Var : value(0),vol(0);
MAv = ma(C,Period);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
if MarketPosition != 0 Then{
if PositionProfit < 0 Then
Vol = MaxContracts+1;
Else
vol = 1;
}
if MarketPosition == 0 Then{
if PositionProfit(1) < 0 Then
Vol = MaxContracts(1)+1;
Else
vol = 1;
}
if MarketPosition <= 0 Then
if crossup(c,bbup+1) Then
buy("b1",OnClose,def,Floor(최대수량*0.5));
if MarketPosition <= 0 Then
if crossup(c,bbup-0) Then
buy("b2",OnClose,def,Floor(최대수량*0.5));
매도반대
위수식에 문제가 있는지 두번에 나누어 매매가 안됨니다.
즉 B1에50% 매수하고 B2에 나머지50% 매매한다.
부탁합니다.
감사합니다.