답변완료
수식 확인 부탁 드립니다
옵션 50틱 챠트에 DATE2 2분(참조데이터 KP외국인 순매수 금액 2분 챠트 date2)설정 하여 시스템 적용 하면 적용이 되지 않아 매수, 매수 청산이 되지를 않습니다
수정 부탁 드립니다(KP외국인 순매수 금액이 플러스 수치일때만 매수 청산이 되도록 원합니다)
( var : V2(0,data2); v2 = data2(c); v2 >0 이 없을때는 실행이 잘됩니다
var : V2(0,data2);
v2 = data2(c);
inputs: ndays(25);
vars: alpha(0),bo(0),bo1(c),xest(0),xest1(c),emaV(0),ema1(c),tosc(0);
alpha = 2 / (ndays + 1);
bo = (1 - alpha) * bo1 + close;
emaV = ema1 + alpha * (close - ema1);
xest = (1 - alpha) * xest1 + alpha * (close + bo - bo1);
bo1 = bo;
xest1 = xest;
ema1 = emaV;
tosc = xest - emaV;
if index > 50 then begin
if v2 > 0 and tosc > 0 then buy();
if tosc < 0 then ExitLong();
end;
2020-04-09
668
글번호 137770
시스템
답변완료
부탁드립니다.
감사드립니다.
StopLoss, StopTrailing봉에 표시가 잘 됩니다.
하나만 더 부탁드립니다.
마지막 봉에서 StopLoss, StopTrailing 된 것이 계산에 반영이 안됩니다.
마지막 봉의 StopLoss, StopTrailing 된것이 반영된 값으로 표현을 부탁드립니다.
같은 시점에 안된다면 topLoss, StopTrailing 다음 봉에 표시될 수 있도록 요청드립니다.
여러번 부탁드려서 죄송합니다.
3
input : 손절(20),익절(15),익절하락(3);
input : P1(30), P2(120), p3(240);
input : StartTime(090000),EndTime(050000);
var : tt(0),tx(0),X(false),tx1(0),cnt(0),sum(0);
var: Tcond(false),ht(0),lcnt(0),trcnt(0),R(-1);
Array : XX[200](-1);
var1 = ma(C, P1);
var2 = ma(C, P2);
var3 = ma(C, P3);
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
tt = 0;
X = false;
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
{
Tcond = false;
if MarketPosition == 1 Then
{
ExitLong("BE6");
}
if MarketPosition == -1 Then
{
ExitShort("SE6");
}
}
if Tcond == true then
{
if marketposition == 0 and crossup(var1,var2) Then {
buy("B1");
}
if marketposition == 0 and crossdown(var1,var2) Then {
sell("S1");
}
if marketposition == 0 and crossup(var2,var3) and var3[1] < var3 Then {
buy("B2");
}
if marketposition == 0 and crossdown(var3,var4) and var3[1] > var3 Then {
sell("S2");
}
## 청산
if MarketPosition == 1 then
{
SetStopTrailing(익절하락,익절,PointStop);
SetStopLoss(손절,PointStop);
}
if MarketPosition == -1 Then
{
SetStopTrailing(익절하락,익절,PointStop);
SetStopLoss(손절,PointStop);
}
}
## 카운트 (수정요청)
if TotalTrades > TotalTrades[1] then
{
if IsExitName("StopLoss",1) == true then
{
lcnt = lcnt+1;
XX[0] = 0;
for cnt = 1 to 199
{
XX[cnt] = XX[cnt-1][1];
}
if Floor((trcnt+lcnt)*0.2) > 1 then
{
sum = 0;
for cnt = 0 to Floor((trcnt+lcnt)*0.2)-1
{
if XX[cnt] == 1 Then
sum = sum+1;
}
R = sum/Floor((trcnt+lcnt)*0.2)*100;
}
tt = tt +1 ;
if tt > ht Then
{
ht = tt;
}
tx = Text_New(ExitDate(1),ExitTime(1),h[BarsSinceExit(1)],NumToStr(ht,0)+"◆");
Text_SetSize(tx,20);
Text_Setstyle(tx,2,1);
Text_SetColor(tx,GREEN);
Text_Delete(tx1);
tx1 = Text_New(ExitDate(1),ExitTime(1),h[BarsSinceExit(1)],NumToStr(trcnt/(trcnt+lcnt)*100,1)+NewLine+NumToStr(R,1)+NewLine+NewLine);
Text_SetStyle(tx1,2,1);
}
if IsExitName("StopTrailing",1) == true then
{
trcnt = trcnt+1;
XX[0] = 1;
for cnt = 1 to 199
{
XX[cnt] = XX[cnt-1][1];
}
if Floor((trcnt+lcnt)*0.2) > 1 then
{
sum = 0;
for cnt = 0 to Floor((trcnt+lcnt)*0.2)-1
{
if XX[cnt] == 1 Then
sum = sum+1;
}
R = sum/Floor((trcnt+lcnt)*0.2)*100;
}
tt = tt + 1;
ht = tt;
tx = Text_New(ExitDate(1),ExitTime(1),h[BarsSinceExit(1)],NumToStr(ht,0)+"◆");
Text_SetSize(tx,20);
Text_Setstyle(tx,2,1);
Text_SetColor(tx,GREEN);
Text_Delete(tx1);
tx1 = Text_New(ExitDate(1),ExitTime(1),h[BarsSinceExit(1)],NumToStr(trcnt/(trcnt+lcnt)*100,1)+NewLine+NumToStr(R,1)+NewLine+NewLine);
Text_SetStyle(tx1,2,1);
}
}
2020-04-09
810
글번호 137764
시스템
답변완료
수식전환 부탁드립니다.
수식전환 부탁드립니다.
length = input(title="Length", type=integer, defval=45)
powersLength = input(title="Elder Powers Length", type=integer, defval=10)
adjustableLevel = input(title="Adjustable Entry Level", type=integer, defval=75)
applyFilling = input(title="Apply Powers Filling ?", type=bool, defval=false)
elderBullPower = high - ema(close, powersLength)
elderBearPower = low - ema(close, powersLength)
adjust(value) => 100 * value / length
bullCount = sum(elderBullPower > 0 ? 1 : 0, length)
bearCount = sum(elderBearPower < 0 ? 1 : 0, length)
total = adjust(abs(bullCount - bearCount))
bull = adjust(bullCount)
bear = adjust(bearCount)
bullPlot = plot(bull, title="Bull", linewidth=2, color=#0ebb23, transp=0)
bearPlot = plot(bear, title="Bear", linewidth=2, color=red, transp=0)
plot(total, title="Total", linewidth=2, color=#3c78d8, transp=0)
fillColor = applyFilling ? (bull > bear ? #0ebb23 : red) : color(white, 100)
fill(bullPlot, bearPlot, color=fillColor, transp=80)
hline(adjustableLevel, title="Adjustable Entry Level", linestyle=dotted)
hline(50, title="Middle Level", linestyle=dotted, color=#f49517)
2020-04-09
979
글번호 137758
지표
답변완료
문의드립니다.
input : length(20),siglength(9),colorBars(false);
var : mao(0),mac(0),mc(0),mo(0),signal(0);
mao =ma(open, length);
mac =ma(close, length);
mc=mac-mao;
mo=mao-mac;
signal=ma(mc, siglength);
plot1(0,"ZeroLine",gray);
plot2(mc,"BullHisto",green);
plot3(mo,"BearHisto",red);
plot4(mo,"BearLine",red);
plot5(mc,"BullLine",green);
plot6(signal,"Signal",blue);
-------------------------------------------------------------
변환된 이 수식에서 plot6만을 남기고 캔들에 적용시키고 싶어서
input : length(20),siglength(9);
var : mao(0),mac(0),mc(0),mo(0),signal(0);
mao =ma(open, length);
mac =ma(close, length);
mc=mac-mao;
mo=mao-mac;
signal=ma(mc, siglength);
plot1(signal,"Signal",blue);
으로 수정 후 컴파일 해보았습니다. 소수점 자리는 6으로 세팅한 후 적용해본 결과
화면에 적용하였을 때, 정상적으로 구현이 되나
가격에 적용을 하였을 때는 캔들위로 overlay가 되지 않고 캔들을 위로 밀리고
0으로 구현이 됩니다.
수정 문의드려도 될까요
감사합니다.
2020-04-09
1097
글번호 137757
지표