답변완료
수식문의드립니다.
안녕하세요. 감사드립니다.
지표 수식 부탁드립니다.
3개의 삼각가중이평 input:P1(20),P2(90),P3(200);
에서 정 중간에 있는 이평에 가격이 닿았을데
사운드 알람을 재생기시키는 지표를 부탁드립니다.
Ex) 실시간 차트변화중 맨위 20삼각가중, 중간 200, 맨아래 90이 배치되면
가격이 중간 200삼각가중이평에 닿으면 사운드 알람 발동
Ex) 실시간 차트변화중 맨위 200삼각가중, 중간 90, 맨아래 20이 배치되면
가격이 중간 90삼각가중이평에 닿으면 사운드 알람 발동
감사합니다.
좋은 날 되세요.
2023-10-30
671
글번호 173516
지표
답변완료
매매식 좀 요청 드립니다.
* 항상 많은도움에 고맙습니다.
* 아래 수식에서 15틱 이상 발생 하면 매매식 좀 요청 드립니다.
단순하게 var1 + PriceScale*15 하면 매매식이 안됨니다.
즉 신호가 먼저 발생 하고 + PriceScale*15 에 매매식이 나와야 합니다.
<요청사항>
1. 신호발생(crossup(var1,var2)) 이후 신호 발생가격 + PriceScale*15 되면 매수
2. 20틱 수익후 청산
var1 = ma(c,5) ;
var2 = ma(c,10) ;
if crossup(var1,var2) then buy("aa1") ;
if crossdown(var1,var2) then sell("bb1") ;
* 고맙습니다.
2023-10-30
782
글번호 173512
시스템
답변완료
해외선물 시고저종
안녕하세요 주말 잘 지내셨는지요
아래 식은 해외선물 매매할때 햇갈려서 시간대 나누어서 해당 시간대의 고가를 만든 사용자 함수 입니다.
Inputs : DaysAgo(Numeric);
var : DD(0),Year(0),V1(0),V2(0),V3(0),V4(0),summer(False);
var : ET1(0),XT1(0),ET2(0),XT2(0),Tcond(False);
Array : HighArray[50](0);
if sDate != sDate[1] Then
{
DD = DayOfWeek(sDate);
Year = Floor(sDate/10000);
V1 = (10000 * Year) + (100 * 3) + 1;
V2 = 15 - dayofweek(v1);
v3 = (10000 * Year) + (100 * 11) + 1;
v4 = 8 - dayofweek(v3);
Summer = Sdate > (10000 * Year) + (100 * 3) + v2 and Sdate < (10000 * Year) + (100 * 11) + v4;
if summer == False Then
{
ET1 = 233000;
XT1 = 232500;
}
Else
{
ET1 = 233000-10000;
XT1 = 232500-10000;
}
}
Condition98=False;
If Int((sDate[1]-int(sDate[1]/10000)*10000)/100)==2 Then
{
If sDate[1]+73==sDate Then
Condition98=True;
Else
Condition98=False;
}
If (sDate[1]+70==sDate Or sDate[1]+71==sDate) Then
Condition99=True;
Else
Condition99=False;
If DataCompress <= 2 Then
{
if ((sDate != sDate[1] and sTime >= XT1) or
(sDate == sDate[1] and sTime >= XT1 and sTime[1] < XT1)) or (sDate[1]+2<=sDate && Condition99==False && Condition98==False) Then
{
Tcond = False;
}
if (sDate != sDate[1] and sTime >= ET1) or
(sDate == sDate[1] and sTime >= ET1 and sTime[1] < ET1) Then
{
Tcond = true;
For Var1 = 49 DownTo 1 {
HighArray[Var1] = HighArray[Var1 - 1];
}
HighArray[0] = High;
}
If Tcond==True Then
{
If High > HighArray[0] Then
HighArray[0] = High;
}
If DaysAgo < 50 && HighArray[DaysAgo] != -1 Then
GoldHighD = HighArray[DaysAgo];
}
else
{
GoldHighD = High[DaysAgo];
}
------------------------------------------------------------------------
이런식으로 해당 시간대의 시고저종 함수를 모두 만들었습니다.
보시다시피 HighD,LowD,CloseD,OpenD 함수를 보고 만든건데, 문제가 분봉에서의 일봉 ATR함수를 만들어도 값이 제대로 반환이 안되더라구요. 아래는 그 수식입니다.
input : P(Numeric);
var : TH(0),TL(0),Sum(0),TR(0),DayATR(0),cnt(0);
sum = 0;
for cnt = 0 to P-1{
If GoldCloseD(cnt+1) > GoldHighD(cnt) then
TH = GoldCloseD(cnt+1);
else
TH = GoldHighD(cnt);
If GoldCloseD(cnt+1) < GoldLowD(cnt) then
TL = GoldCloseD(cnt+1);
else
TL = GoldLowD(cnt);
TR = TH-TL;
Sum = Sum+TR;
}
GoldATRminute = Sum/P;
---------------------------------------------------------------
그래서 국내시장으로 다시 테스트해서 HighD와 같은 함수로 일중 ATR을 구하면 값이 반환되지 않고 dayhigh 같은 함수를 통해서만 값이 제대로 반환된다는 것을 알게 되었습니다.
근데 dayhigh 를 사용하면 또 해당 시간대의 시,고,저,종을 반환하지 못하게 되는데.. 혹시 이를 해결할 수 있는 방법이 있을까요? 항상 도움주셔서 감사합니다.
2023-10-30
942
글번호 173510
사용자 함수
답변완료
문의드립니다
안녕하세요
A=(highest(high,5)+lowest(low,5))/2;
B=avg(C,20);
D=sum(v*((Pow((C-L),2)-Pow((H-C),2))/(H-L)));
F=OBV();
G=MA(OBV(),9,지수);
A > B && F > G && D>D(1) && V>V(1)*2
조건검색 부탁드립니다
수고하세요
2023-10-29
855
글번호 173507
검색