답변완료
time 진입/1차후 2차진입 손절/익절/피라미딩
문의 드립니다.
1.두번째 진입의 손절2,익절2,tr2 작동되지 않고 첫번째 조건이 모두 적용됩니다.
(미니선물1분차트
고가갱신수 10
첫번째 진입 손절1(30),익절1(50),tr1(40)
두번째 진입 손절2(30),익절2(50),tr2(40) 했을때
b1, b2 모두 bl1,bp1,btr1 적용됨
2.두번째 진입에 사용할 피라미밍2 조건 수식이 없습니다.
**********************************************************************************
안녕하세요
예스스탁입니다.
input : ntime(090000),n(1);
input : 고가갱신수(20);
input : uppyra검증(1.20);
input : 상승pyra(0.20),상승N(12);
input : up손절1(99999),up익절1(99999),upTR1(99999);
input : up손절2(99999),up익절2(99999),upTR2(99999);
var : BE1(0),BH1(0),BV1(0),BXcond1(false);
var : BE2(0),BH2(0),BV2(0),BXcond2(false);
if stime == ntime or (stime > ntime and stime[1] < ntime) Then{
if MaxEntries < n Then
buy("b1");
}
if MarketPosition == 1 and C >= EntryPrice+uppyra검증 and MaxContracts < 상승N Then
buy("bb",AtStop,LatestEntryPrice(0)+상승Pyra);
if MarketPosition == 0 and #현재무포지션이고
EntryDate(1) == sdate and #직전거래가 오늘 발생한 거래이고
MarketPosition(1) == 1 and #직전거래가 매수거래이고
countif(DayHigh(0) != DayHigh(0)[1],BarsSinceExit(1)) >= 고가갱신수 Then #청산이후 당일고가 갱신이 n회이상 있었으면
buy("b2");
if MarketPosition == 1 then
{
if CurrentContracts > CurrentContracts[1] Then
{
if MaxEntries == 1 then
{
BE1 = LatestEntryPrice(0);
Bh1 = h;
Bv1 = CurrentContracts-CurrentContracts[1];
BXcond1 = false;
}
if MaxEntries == 2 then
{
BE2 = LatestEntryPrice(0);
Bh2 = h;
Bv2 = CurrentContracts-CurrentContracts[1];
BXcond2 = false;
}
}
if CurrentContracts < CurrentContracts[1] then
{
if LatestExitName(0) == "bl1" or
LatestExitName(0) == "bp1" or
LatestExitName(0) == "btr1" Then
BXcond1 = true;
if LatestExitName(0) == "bl2" or
LatestExitName(0) == "bp2" or
LatestExitName(0) == "btr2" Then
BXcond2 = true;
}
if MaxEntries >= 1 then
{
if h > Bh1 Then
Bh1 = h;
if BXcond1 == false Then
{
ExitLong("bl1",AtStop,BE1-PriceScale*up손절1,"",BV1,1);
ExitLong("bp1",Atlimit,BE1+PriceScale*up익절1,"",BV1,1);
ExitLong("btr1",AtStop,Bh1-PriceScale*upTR1,"",BV1,1);
}
}
if MaxEntries >= 2 then
{
if h > Bh2 Then
Bh2 = h;
if BXcond2 == false Then
{
ExitLong("bl2",AtStop,BE2-PriceScale*up손절2,"",BV2,1);
ExitLong("bp2",Atlimit,BE2+PriceScale*up익절2,"",BV2,1);
ExitLong("btr2",AtStop,Bh2-PriceScale*upTR2,"",BV2,1);
}
}
}
else
{
Bxcond1 = false;
Bxcond2 = false;
}
즐거운 하루되세요
> 목마와숙녀 님이 쓴 글입니다.
> 제목 : 문의
> 아래수식의 손절,익절,TR,피라미딩은 1차 진입과 2차 진입에 공통으로 적용됩니다.
손절,익절,TR,피라미딩을
첫번째 진입과 두번째 진입에 각각 구분하여 적용하고 싶습니다.
*************************************************************************************
input : ntime(090000),n(1);
input : 고가갱신수(20);
input : uppyra검증(1.20);
input : 상승pyra(0.20),상승N(12);
input : up손절(99999),up익절(99999),upTR(99999);
if stime == ntime or (stime > ntime and stime[1] < ntime) Then{
if MaxEntries < n Then
buy("b1");
}
if MarketPosition == 1 and C >= EntryPrice+uppyra검증 and MaxContracts < 상승N Then
buy("bb",AtStop,LatestEntryPrice(0)+상승Pyra);
if MarketPosition == 0 and #현재무포지션이고
EntryDate(1) == sdate and #직전거래가 오늘 발생한 거래이고
MarketPosition(1) == 1 and #직전거래가 매수거래이고
countif(DayHigh(0) != DayHigh(0)[1],BarsSinceExit(1)) >= 고가갱신수 Then #청산이후 당일고가 갱신이 n회이상 있었으면
buy("b2");
if MarketPosition == 1 then
{
ExitLong("bl1",AtStop,EntryPrice-PriceScale*up손절);
ExitLong("bp1",Atlimit,EntryPrice+PriceScale*up익절);
ExitLong("btr1",AtStop,highest(h,BarsSinceEntry)-PriceScale*upTR);
}
2020-01-20
189
글번호 134505
시스템
답변완료
검색이 안되요
input : Period(30),d1(1.8),기간(5),k(2);
var : wma1(0),NL(0),BarsSince(-1),wma2(0),NL2(0),BarsSince2(-1),MM(0),LL(0),NL3(0),BarsSince3(-1);
wma2 = wma((money/v+l+h)/3,period)+D1-std((money/v+l+h)/3,period);
wma1 = wma((money/v+c+o)/3,period)+D1*std((money/v+c+o)/3,period);
MM = BollBanddown(30, 1.8);
LL = Lowest(MM, 기간);
if crossup(c,wma1) Then
{
NL = wma1;
BarsSince = 0;
}
Else
{
if BarsSince >= 0 Then
BarsSince = BarsSince+1;
}
if BarsSince == 기간-k Then
var1 = NL;
if crossDOWN(c,wma2) Then
{
NL2 = wma2;
BarsSince2 = 0;
}
Else
{
if BarsSince2 >= 0 Then
BarsSince2 = BarsSince2+1;
}
if BarsSince2 == 기간-k Then
var2 = NL2;
if MM < ll[1] Then
{
NL3 = MM;
BarsSince3 = 0;
}
Else
{
if BarsSince3 >= 0 Then
BarsSince3 = BarsSince3+1;
}
if BarsSince3 == 기간-k Then
var3 = NL3;
var4 = var3/var1*100;
var5 = (c/var1)*100;
if var5 < 100 Then
find(1);
var5 의 결과 값이 이상하게 나오는 듯해요. 지표에서는 나오는데 조건 검색에서는 안나와요
2019-12-18
162
글번호 134498
종목검색
답변완료
매수 진입후 100틱 아래 떨어졌을때 추가 매수 하는 수식이 할때마다 다르게 진입됨
최초 매수 진입하고 분할매수틱수(100) 변수에 의해 진입한 금액의 100틱 이하로 떨어졌을때
추가로 진입하는 수식인데요...
시물레이션 하면 자기 마음대로 추가 진입이 되어 버리네요..
보니까 1차 매수는 조건에 만족하는 중간봉일때 매수가 되고 2차매수는 그다음봉에 매수가 되어 버리는 것 같네요..
제가 원하는 사항은 예를들어
1차 매수 시점
if BuySetup == true Then
buy("매수",AtLimit,var1-PriceScale*하락틱수);
2차 매수 시점은 1차 매수시점에서 분할매수틱수(100) 만큼의 하락했을때 진입입니다
아래 수식이 잘못된 사항 체크 부탁드릴께요~~`
================================================================
Input : RSIPeriod(14),RSI매수값(22),SimPeriod(14),심리도값(16);
Input : N1(1),초기화(7);
Input : CCI기간(80),CCI값(300);
Input : 하락틱수(20);
Input : 분할매수횟수(2),분할매수틱수(100);
var : CCIv(0),RSIv(0),Simri(0),BuySetup(false),DD(0);
CCIv = CCI(CCI기간);
RSIV = RSI(RSIPeriod);
Simri = Simrido(SimPeriod);
Condition1 = RSIv < RSI매수값 and Simri < 심리도값;
if bdate != bdate[1] Then
{
DD = DD+1;
if var2 > 0 and DD == var2+초기화 Then
BuySetup = false;
}
if BuySetup == false and Condition1 == true and Condition1[1] == false Then
{
var1 = C;
var2 = DD;
BuySetup = true;
}
/* if BuySetup == true and CrossDown(CCIv,CCI값) Then
BuySetup = false;*/
if BuySetup == true Then
buy("매수",AtLimit,var1-PriceScale*하락틱수);
#추가진입
if MarketPosition == 1 and MaxEntries < 분할매수횟수 Then
buy("추가매수",atlimit,LatestEntryPrice(0)-PriceScale*분할매수틱수,1);
2019-12-18
208
글번호 134493
시스템
답변완료
수식 수정부탁드립니다.
스토케스틱, RSI 과열,침체구간을 캔들위에 표시하고자 만들어 보았는데
캔들 바로위에 표시가 됩니다.
스토케스틱 과열침체구간은 캔들에 약간 떨어져서 표시되고, RSI과열침체구간은 스토케스틱 위헤 표시가 되도록 수정부탁드립니다.
강조식은 아니고 지표식으로 부탁드립니다.
아무것도 모르고 이것 저것 참조해서 만들었는데 표시가 되기는 한데 제가 작성한 것이 맞는지 모르겠습니다. 부탁드립니다.
원모양은 스토케스틱, 십자모양은 RSI 과열침체일때 나타나는 표시입니다.
Input : Period(9), Period1(12), Period2(5), Period3(5), 과열1(75),침체1(25), 과열2(70),침체2(30);
var : StoK(0),StoD(0), Relative(0);
StoK = StochasticsK(Period1,Period2);
StoD = StochasticsD(Period1,Period2,Period3);
Relative = RSI(Period);
if stok >= 과열1 Then
plot1(H,"검색",RED);
if stok <= 침체1 Then
plot1(L,"검색",GREEN);
if Relative >= 과열2 Then
plot2(H,"검색",white);
if Relative <= 침체2 Then
plot2(L,"검색",white);
2019-12-18
277
글번호 134490
지표
답변완료
time 진입/1차후 2차진입 손절/익절/피라미딩
아래수식의 손절,익절,TR,피라미딩은 1차 진입과 2차 진입에 공통으로 적용됩니다.
손절,익절,TR,피라미딩을
첫번째 진입과 두번째 진입에 각각 구분하여 적용하고 싶습니다.
*************************************************************************************
input : ntime(090000),n(1);
input : 고가갱신수(20);
input : uppyra검증(1.20);
input : 상승pyra(0.20),상승N(12);
input : up손절(99999),up익절(99999),upTR(99999);
if stime == ntime or (stime > ntime and stime[1] < ntime) Then{
if MaxEntries < n Then
buy("b1");
}
if MarketPosition == 1 and C >= EntryPrice+uppyra검증 and MaxContracts < 상승N Then
buy("bb",AtStop,LatestEntryPrice(0)+상승Pyra);
if MarketPosition == 0 and #현재무포지션이고
EntryDate(1) == sdate and #직전거래가 오늘 발생한 거래이고
MarketPosition(1) == 1 and #직전거래가 매수거래이고
countif(DayHigh(0) != DayHigh(0)[1],BarsSinceExit(1)) >= 고가갱신수 Then #청산이후 당일고가 갱신이 n회이상 있었으면
buy("b2");
if MarketPosition == 1 then
{
ExitLong("bl1",AtStop,EntryPrice-PriceScale*up손절);
ExitLong("bp1",Atlimit,EntryPrice+PriceScale*up익절);
ExitLong("btr1",AtStop,highest(h,BarsSinceEntry)-PriceScale*upTR);
}
2020-01-20
138
글번호 134484
시스템