예스스탁
예스스탁 답변
2019-10-25 11:41:23
안녕하세요
예스스탁입니다.
2개의 수식을 하나로 합쳐드립니다.
2개의 수식을 합치실때 겹치는 변수만 다른이름으로 변경해서 처리하시면 됩니다.
input : P1(1),P2(10);
var : ii(0), sumMonthC1(0), maMonthC1(0),sumMonthC2(0), maMonthC2(0),cnt(0);
var : pp(0),ll(0),tx(0);
array : MC[99](0);
if date > date[1]+30 then
{
for cnt = 1 to 98
{
MC[cnt] = MC[cnt-1][1];
}
}
MC[0] = C;
sumMonthC1 = 0;
sumMonthC2 = 0;
for ii = 0 to P2 - 1 Begin
if ii < P1 Then
sumMonthC1 = sumMonthC1 + MC[ii];
if ii < P2 Then
sumMonthC2 = sumMonthC2 + MC[ii];
end;
maMonthC1 = sumMonthC1/p1;
maMonthC2 = sumMonthC2/p2;
if crossup(maMonthC1,maMonthC2) Then
buy();
if CrossDown(maMonthC1,maMonthC2) Then
sell();
input : N(10),Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4);
var : HP(0),LP(0);
if bdate > bdate[1]+30 Then{
Condition1 = true;
HP = H;
LP = L;
}
if Condition1 == true then{
if H > HP Then
HP = H;
if L < LP Then
LP = L;
}
var1 = 10^(LOG10(HP)-(LOG10(HP)-LOG10(LP))*(Per1/100));
var2 = 10^(LOG10(HP)-(LOG10(HP)-LOG10(LP))*(Per2/100));
var3 = 10^(LOG10(HP)-(LOG10(HP)-LOG10(LP))*(Per3/100));
var4 = 10^(LOG10(HP)-(LOG10(HP)-LOG10(LP))*(Per4/100));
var5 = 10^(LOG10(HP)-(LOG10(HP)-LOG10(LP))*(Per5/100));
if crossup(c,var3) Then
buy();
if CrossDown(c,var3) Then
sell();
if MarketPosition == 1 Then
{
pp = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*10));
if pp > pp[1] Then
{
tx = Text_New(sdate,stime,H+PriceScale*3,NumToStr(pp*10,0)+"틱");
Text_SetStyle(tx,2,1);
Text_SetColor(tx,BLACK);
}
}
if MarketPosition == -1 Then
{
pp = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*10));
if pp > pp[1] Then
{
tx = Text_New(sdate,stime,L-PriceScale*3,NumToStr(pp*10,0)+"틱");
Text_SetStyle(tx,2,0);
Text_SetColor(tx,BLACK);
}
}
즐거운 하루되세요
> 탐라 님이 쓴 글입니다.
> 제목 : 안녕하세요
> 안녕하세요.
수고 많으십니다.
수식 도움 부탁드립니다.
아래 수식은 1).이평선과 2).중심선의 수식입니다.
두개의 수식을 접목을 하여 함께 사용할수 있게 도움 부탁드립니다.
감사 합니다.
수고 하세요.
1).
input : P1(1),P2(10);
var : ii(0), sumMonthC1(0), maMonthC1(0),sumMonthC2(0), maMonthC2(0),cnt(0);
var : pp(0),ll(0),tx(0);
array : MC[99](0);
if date > date[1]+30 then
{
for cnt = 1 to 98
{
MC[cnt] = MC[cnt-1][1];
}
}
MC[0] = C;
sumMonthC1 = 0;
sumMonthC2 = 0;
for ii = 0 to P2 - 1 Begin
if ii < P1 Then
sumMonthC1 = sumMonthC1 + MC[ii];
if ii < P2 Then
sumMonthC2 = sumMonthC2 + MC[ii];
end;
maMonthC1 = sumMonthC1/p1;
maMonthC2 = sumMonthC2/p2;
if crossup(maMonthC1,maMonthC2) Then
buy();
if CrossDown(maMonthC1,maMonthC2) Then
sell();
2).
input : N(10),Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4);
var : cnt(0),HH(0),LL(0);
if bdate > bdate[1]+30 Then{
Condition1 = true;
HH = H;
LL = L;
}
if Condition1 == true then{
if H > HH Then
HH = H;
if L < LL Then
LL = L;
}
var1 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100));
var2 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100));
var3 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100));
var4 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100));
var5 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100));
if crossup(c,var3) Then
buy();
if CrossDown(c,var3) Then
sell();
var : pp(0),tx(0);
if MarketPosition == 1 Then
{
pp = Floor((highest(H,BarsSinceEntry)-EntryPrice)/(PriceScale*10));
if pp > pp[1] Then
{
tx = Text_New(sdate,stime,H+PriceScale*3,NumToStr(pp*10,0)+"틱");
Text_SetStyle(tx,2,1);
Text_SetColor(tx,BLACK);
}
}
if MarketPosition == -1 Then
{
pp = Floor((EntryPrice-lowest(L,BarsSinceEntry))/(PriceScale*10));
if pp > pp[1] Then
{
tx = Text_New(sdate,stime,L-PriceScale*3,NumToStr(pp*10,0)+"틱");
Text_SetStyle(tx,2,0);
Text_SetColor(tx,BLACK);
}
}