답변완료
국내 주식 청산 수식 기능 추가입니다.
청산 수식 추가 요청건입니다.
분할매수로 매수 하였구요 (max 200)
누적 매수 갯수가 100개까지는 아래 청산 수식을 적용하고요(평균 매수값의 10%수익시 일관청산)
누적 매수 갯수가 100개 넘으면 다음의 청산 수식을 적용하고 싶습니다.
1.매수 평균값을 110% 이상을 유지를 기본 디폴트값
2.이동평균선(40일선)을 하향 돌파시 일괄 매수 청산
--> 만약 110%유지하고 있다가 이동평균선(40)일선을 하향돌파시 110%이하 발생시 청산 X
input : n(200),하락퍼센트(0.85);
input : 매매수(200),매수갯수(1);
input : 전일대비하락률(0.998),청산률(10);
var1 = highest(H,n);
if C <= var1*하락퍼센트 and C <= C[1]*전일대비하락률 and stime >= 90000 and stime <= 140000 Then
{
if MarketPosition == 0 or (MarketPosition == 1 and MaxContracts < 매매수) then
buy("b",OnClose,def,매수갯수);
}
if MarketPosition == 1 then
{
exitlong("일괄10%청산",atlimit,AvgEntryPrice*(1+청산률/100));
}
2020-04-05
705
글번호 137556
시스템
답변완료
지표문의
1.지표문의 드리께요
2.번호 58160 매일님 작성해준 수식에서 가격값위 152 또는 56 등 숫자표시가 있는데
나온 의미가 가 무엇입니까?
3. 아래는 시스템 식인데 지표식으로 수정 좀 해 주세요
Input: len(8), s1(0.37), s2(2.7);
var : slv1(0),slv2(0),slb1(0),slb2(0),shv1(0),shv2(0),shb1(0),shb2(0);
var : low_trendline(0),low_radian(0),high_trendline(0),high_radian(0);
var : Cond1(false),Cond2(false),Cond3(false);
slv1=SwingLow(1,low,len,len,100);
slv2=SwingLow(2,low,len,len,100);
slb1=SwingLowBar(1,low,len,len,100);
slb2=SwingLowBar(2,low,len,len,100);
shv1=SwingHigh(1,high,len,len,100);
shv2=SwingHigh(2,high,len,len,100);
shb1=SwingHighBar(1,high,len,len,100);
shb2=SwingHighbar(2,high,len,len,100);
If slb2 > slb1 then{
low_trendline =(slv1-slv2)/(slb2-slb1)*slb1+slv1;
low_radian=(((slv1-slv2)/slv2)*100)/(slb2-slb1);
}
If shb2>shb1 then{
high_trendline =(shv1-shv2)/(shb2-shb1)*shb1+shv1;
high_radian=(((shv1-shv2)/shv2)*100)/(shb2-shb1);
}
Var1=round(atan(low_radian)*180/pie,2);
Var2=round(atan(high_radian)*180/pie,2);
If Var1>0 And Var2>0 And Var1>var2 And high_trendline>low_trendline then# '상향쐐기형
Cond1=True;
Else
Cond1=False;
If Var1<0 And Var2<0 And Var1>var2 And high_trendline > low_trendline then# '하향쐐기형
Cond2=True;
Else
Cond2=False;
If Var1>0 And Var2<0 And high_trendline>low_trendline then# '삼각형
Cond3=True;
Else
Cond3=False;
Var10=highd(1)-lowd(1);
If sdate<>sdate[1] then{
Var50=TotalTrades;
}
If stime<150000 then{
If TotalTrades-var50==0 then{
If Cond1==True And low>low_trendline then{
sell("쐐기매도1",Atstop,low_trendline );
}
If Cond2==True And high<high_trendline then{
buy("쐐기매수1",Atstop,high_trendline );
}
If Cond3=True And low>low_trendline And high<high_trendline then{
buy("삼각매수",Atstop,high_trendline );
sell("삼각매도",Atstop,low_trendline );
}
buy("매수",Atstop,opend(0)+var10*S1);
sell("매도",Atstop,opend(0)-var10*S1);
}
}
If stime<150000 then{
If TotalTrades-var50==1 then{
If Cond1==True And low>low_trendline then{
sell("쐐기매도2",Atstop,low_trendline );
}
If Cond2==True And high<high_trendline then{
buy("쐐기매수2",Atstop,high_trendline );
}
}
}
If MarketPosition<>0 then{
exitlong("매수추적",Atstop,highest(high,barssinceentry+1)-Atr(20)*S2);
exitshort("매도추적",Atstop,lowest(low,barssinceentry+1)+Atr(20)*S2);
}
4.그럼 즐거운 하루 되세요
2020-04-05
926
글번호 137550
지표
답변완료
수정좀 부탁드려요
1. 1) 의 수식을 2)처럼 표현하고자 합니다. 부탁드립니다.
1)
if A > A[1] then
T = 1;
if A < A[1] Then
T = -1;
plot3(A,"A",iff(T == 1,MAGENTA,BLUE));
2)
if var1 > 0 then
{
if C > var1 Then
{
plot1(var1,"C",RED);
plot2(999999999,"라인1");
}
Else
{
plot1(var1,"C",BLUE);
plot2(0,"라인1");
}
}
2. 아래의 수식을 삼각가중으로 변환부탁드립니다.
var : color1(0), color2(0), color3(0), N(0), period(0);
For Period = 5 to 60 step 2 {
value1 = ATR(20);
var1 = ma(C,Period);
var2 = (var1 - var1[1])/value1;
N = 1;
For N = 0 to 50 {
IF var2 >= 0 and var2 > N/50 THEN {
Color1 = N*10/5 ;
Color2 = N*10/5 ;
Color3 = N*10/5 ;
}
IF var2 < 0 and var2 < -N/50 THEN {
Color1 = N*10/5 ;
Color2 = N*10/5 ;
Color3 = N*10/5 ;
}
if period == 5 then Plot1(var1, "5", RGB(Color1, Color2, Color3));
2020-04-06
606
글번호 137548
지표