커뮤니티
문의드립니다.
2018-07-08 16:57:19
152
글번호 120362
안녕하세요?
아래 수식으 수정 부탁드립니다.
최초 b1진입후 b1이 청산되기 전까지는 파라미딩을 설정해도 b1은 더이상 진입하지 않게 부탁드립니다.
또, b2는 b1 진입후 10%하락시 진입인데..이것또한 파라미딩을 설정해도 1회만 진입하고,
b3는 b1 과 b2를 합한 평균가 보다 10% 하락시 1회만 진입하도록 수정부탁드립니다.
또, b2가 청산될때 b1도 같이 청산,
b3가 청산될때 b1과 b2도 같이 청산될수 있도록 부탁드립니다.
///////////////////////////////////////////////////////////////////////////////////
아래 청산식은 따로 부탁드립니다.
청산식 추가 : 5%이상 상승후 2% 하락하면 청산,
(위 청산식은 진입한 모든(b1만진입시 b1만, b1,b2진입시 두개의 평균가, b1,b2,b3진입시에는 3개의 평균가) 가격의 평균가로 부탁드립니다.
늘 감사합니다^.^
input : BBP(20),Dv(1,8);
input : EVP(10),Per(2);
input : 금1(100000),금2(100000),금3(100000);
var : sum1(0),cnt(0),SumSqrt(0),Stdv(0);
var : BBmd(0),BBup(0),BBdn(0);
var : EVmd(0),Evup(0),Evdn(0),sum2(0);
#일봉 볼밴계산
If DayClose(BBP-1) > 0 Then
{
sum1 = 0;
for cnt = 0 to BBP-1
{
sum1 = sum1 + DayClose(cnt);
}
BBmd = sum1/BBP;
SumSqrt = 0;
For cnt = 0 To BBP - 1
{
SumSqrt = SumSqrt + (DayClose(cnt) - BBmd)^2;
}
Stdv = SquareRoot(SumSqrt / BBP);
BBup = BBmd + (Dv * Stdv);
BBdn = BBmd - (Dv * Stdv);
}
#일봉 엔벨로프 계산
If DayClose(EVP-1) > 0 Then
{
sum2 = 0;
for cnt = 0 to BBP-1
{
sum2 = sum2 + DayClose(cnt);
}
Evmd = sum2/BBP;
Evup = Evmd + EVmd*(Per/100);
Evdn = EVmd - EVmd*(Per/100);
}
if stime >= 091500 and stime[1] < 091500 then
{
if c<=o Then
buy("b1",OnClose,def,Floor(금1/C));
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
buy("b2",AtLimit,AvgEntryPrice*0.90,Floor(금1/C));
if MaxEntries == 2 Then
buy("b3",AtLimit,AvgEntryPrice*0.90,Floor(금3/C));
}
답변 1
예스스탁 예스스탁 답변
2018-07-09 13:36:27
안녕하세요
예스스탁입니다.
피라미딩 설정을 다른진입신호만 허용으로 설정하고 적용하시면 됩니다.
input : BBP(20),Dv(1.8);
input : EVP(10),Per(2);
input : 금1(100000),금2(100000),금3(100000);
var : sum1(0),cnt(0),SumSqrt(0),Stdv(0);
var : BBmd(0),BBup(0),BBdn(0);
var : EVmd(0),Evup(0),Evdn(0),sum2(0);
#일봉 볼밴계산
If DayClose(BBP-1) > 0 Then
{
sum1 = 0;
for cnt = 0 to BBP-1
{
sum1 = sum1 + DayClose(cnt);
}
BBmd = sum1/BBP;
SumSqrt = 0;
For cnt = 0 To BBP - 1
{
SumSqrt = SumSqrt + (DayClose(cnt) - BBmd)^2;
}
Stdv = SquareRoot(SumSqrt / BBP);
BBup = BBmd + (Dv * Stdv);
BBdn = BBmd - (Dv * Stdv);
}
#일봉 엔벨로프 계산
If DayClose(EVP-1) > 0 Then
{
sum2 = 0;
for cnt = 0 to BBP-1
{
sum2 = sum2 + DayClose(cnt);
}
Evmd = sum2/BBP;
Evup = Evmd + EVmd*(Per/100);
Evdn = EVmd - EVmd*(Per/100);
}
if stime >= 091500 and stime[1] < 091500 then
{
if MarketPosition == 0 and c<=o Then
buy("b1",OnClose,def,Floor(금1/C));
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
buy("b2",AtLimit,AvgEntryPrice*0.90,Floor(금1/C));
if MaxEntries == 2 Then
buy("b3",AtLimit,AvgEntryPrice*0.90,Floor(금3/C));
if CurrentContracts > CurrentContracts[1] Then
var1 = h;
if h > var1 Then
var1 = h;
if var1 >= AvgEntryPrice*1.05 Then
ExitLong("bx",AtStop,var1*0.98);
}
즐거운 하루되세요
> 하늘북 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 안녕하세요?
아래 수식으 수정 부탁드립니다.
최초 b1진입후 b1이 청산되기 전까지는 파라미딩을 설정해도 b1은 더이상 진입하지 않게 부탁드립니다.
또, b2는 b1 진입후 10%하락시 진입인데..이것또한 파라미딩을 설정해도 1회만 진입하고,
b3는 b1 과 b2를 합한 평균가 보다 10% 하락시 1회만 진입하도록 수정부탁드립니다.
또, b2가 청산될때 b1도 같이 청산,
b3가 청산될때 b1과 b2도 같이 청산될수 있도록 부탁드립니다.
///////////////////////////////////////////////////////////////////////////////////
아래 청산식은 따로 부탁드립니다.
청산식 추가 : 5%이상 상승후 2% 하락하면 청산,
(위 청산식은 진입한 모든(b1만진입시 b1만, b1,b2진입시 두개의 평균가, b1,b2,b3진입시에는 3개의 평균가) 가격의 평균가로 부탁드립니다.
늘 감사합니다^.^
input : BBP(20),Dv(1,8);
input : EVP(10),Per(2);
input : 금1(100000),금2(100000),금3(100000);
var : sum1(0),cnt(0),SumSqrt(0),Stdv(0);
var : BBmd(0),BBup(0),BBdn(0);
var : EVmd(0),Evup(0),Evdn(0),sum2(0);
#일봉 볼밴계산
If DayClose(BBP-1) > 0 Then
{
sum1 = 0;
for cnt = 0 to BBP-1
{
sum1 = sum1 + DayClose(cnt);
}
BBmd = sum1/BBP;
SumSqrt = 0;
For cnt = 0 To BBP - 1
{
SumSqrt = SumSqrt + (DayClose(cnt) - BBmd)^2;
}
Stdv = SquareRoot(SumSqrt / BBP);
BBup = BBmd + (Dv * Stdv);
BBdn = BBmd - (Dv * Stdv);
}
#일봉 엔벨로프 계산
If DayClose(EVP-1) > 0 Then
{
sum2 = 0;
for cnt = 0 to BBP-1
{
sum2 = sum2 + DayClose(cnt);
}
Evmd = sum2/BBP;
Evup = Evmd + EVmd*(Per/100);
Evdn = EVmd - EVmd*(Per/100);
}
if stime >= 091500 and stime[1] < 091500 then
{
if c<=o Then
buy("b1",OnClose,def,Floor(금1/C));
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
buy("b2",AtLimit,AvgEntryPrice*0.90,Floor(금1/C));
if MaxEntries == 2 Then
buy("b3",AtLimit,AvgEntryPrice*0.90,Floor(금3/C));
}
다음글
이전글