Har du ändrat till 119 på alla ställen som behövs? Det är inga porblem med celler över 200 så det är inte problemet. Jag gissar att du fått en loop eftersom värdet i cell 119 inte återmatas utan skrivning sker hela tiden med krasch som följd.
Allmänt meddelande
Collapse
No announcement yet.
Cell-script
Collapse
X
-
Så här ser scripten ut:
**********************************************************
* script som skapar värde på signal i cell 119
signal:=xxxxx
}
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
tidsignal:=GT(rest,59)
}
Signal_visa:=And(tidsignal,signal)
flagga:=mult(Signal_visa,40)
{---Vi lägger in värdet i cell 119------------------------------------}
SetGVarIf(signal,119,1)
i60(flagga)
**********************************************************
* ovanstående script som jämför 119/120 och skapar i 121, 122
{---Mäta föregående stapels high och low--------------------------}
high:=Aref(h,1)
low:=Aref(l,1)
{---Cell 119 --------------------------------------------}
aktuellt:=GetGVar(119)
lagrat:=GetGVar(120)
nytt:=Not(Eqv(aktuellt,lagrat))
SetGVarIf(high,121,nytt)
SetGVarIf(low,122,nytt)
SetGVarIf(aktuellt,120,nytt)
Här finns inget intraday som omsluter, ska det vara det?
ex i60(xxxxx)
**********************************************************
* script som läser av cell 121 och ska visa linje
limit:=GetGvar(121) {cell där buy lagras}
draw(limit,2,YQB)
test=Gt(c,limit)
mult(test,5)
Här finns heller inget intraday som omsluter, ska det vara det?
ex i60(xxxxx)
Totalt är det 3 script som ska ta in data under samma cykel och beräkna värden, rita linjer, hur får man till det?
Last edited by jorgeng; 2008-10-02, 11:12.
Comment
-
Lite småsaker som jag hittade:
signal:=xxxxx < "signal" är delnamn av "tidsignal" nedan, kan skapa kaos i scriptkompilatorn
}
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
tidsignal:=GT(rest,59) < tidsignal blir aldrig sant eftersom större än 59 aldrig uppnås. Ändra till 58
}
Signal_visa:=And(tidsignal,signal)
flagga:=mult(Signal_visa,40)
{---Vi lägger in värdet i cell 119------------------------------------}
SetGVarIf(signal,119,1)
i60(flagga)
**********************************************************
* ovanstående script som jämför 119/120 och skapar i 121, 122
{---Mäta föregående stapels high och low--------------------------}
high:=Aref(h,1)
low:=Aref(l,1)
{---Cell 119 --------------------------------------------}
aktuellt:=GetGVar(119)
lagrat:=GetGVar(120)
nytt:=Not(Eqv(aktuellt,lagrat))
SetGVarIf(high,121,nytt)
SetGVarIf(low,122,nytt)
SetGVarIf(aktuellt,120,nytt)
Här finns inget intraday som omsluter, ska det vara det?
ex i60(xxxxx)
Det behövs inte egentligen men man kan ju alltid lägga dit i1(nytt)
**********************************************************
* script som läser av cell 121 och ska visa linje
limit:=GetGvar(121) {cell där buy lagras}
draw(limit,2,YQB)
test=Gt(c,limit)
mult(test,5)
Här finns heller inget intraday som omsluter, ska det vara det?
ex i60(xxxxx)
Samma som ovan
Comment
-
Rikard,
tyvärr fungerar ej de 3 scripten med samverkan.
Den gula linjen ritas ej korrekt.
Det är ett daily-script Lasse gav mig för några år sedan, fungerar ej
att ha i60 runt, sätter jag i60 visas inget alls
jag har visa intraday,
flagga
0-100
scriptet fungerar i dagsgrafer, men jag vet ej om värdet kommer in rätt i
cell 121
**********************************************************
* script som läser av cell 121 och ska visa linje
limit:=GetGvar(121) {cell där buy lagras}
draw(limit,2,YQB)
test=Gt(c,limit)
mult(test,5)
Här finns heller inget intraday som omsluter, ska det vara det?
ex i60(xxxxx)
Samma som ovan
Comment
-
"signal" är delnamn av minst två andra variabler, tidsignal och signal_visa, så det kommer garanterat bli kaos.
Ändra namnen så de blir unika och provkör igen, borde fungera.
signal:=xxxxx < "signal" är delnamn av "tidsignal" nedan, kan skapa kaos i scriptkompilatorn
}
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
tidsignal:=GT(rest,58)
}
Signal_visa:=And(tidsignal,signal) {här är alla tre variabler delnamn där signal ingår, krock!}
Comment
-
Ursprungligen postat av Åke Sturefelt Visa inläggProva med att flytta ner draw(limit,2,YQB) till under test=
Jag har nämligen varit med om liknande fenomen.
Comment
-
Ursprungligen postat av Rikard Nilsson Visa inlägg"signal" är delnamn av minst två andra variabler, tidsignal och signal_visa, så det kommer garanterat bli kaos.
Ändra namnen så de blir unika och provkör igen, borde fungera.
signal:=xxxxx < "signal" är delnamn av "tidsignal" nedan, kan skapa kaos i scriptkompilatorn
}
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
tidsignal:=GT(rest,58)
}
Signal_visa:=And(tidsignal,signal) {här är alla tre variabler delnamn där signal ingår, krock!}
Comment
-
Rikard,
alla värden skapas ej riktigt i denna snurran:
{---Mäta föregående stapels high och low--------------------------}
high:=Aref(h,1)
low:=Aref(l,1)
{---Cell 119 --------------------------------------------}
aktuellt:=GetGVar(119)
lagrat:=GetGVar(120)
nytt:=Not(Eqv(aktuellt,lagrat))
SetGVarIf(high,121,nytt)
SetGVarIf(low,122,nytt)
SetGVarIf(aktuellt,120,nytt)
Jag la in ritning av graf på cell 122 och den är tom, ingen linje visas.
Comment
-
Ursprungligen postat av Rikard Nilsson Visa inläggMen har du ändrat värde som skrivs till cell 119? Annars blir inte "nytt" sant, och då skrivs inget värde till cell 122.
input:=xxxxx dvs indikatorn
}
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
time:=GT(rest,59)
}
Signal_visa:=And(time,input)
flagga:=mult(Signal_visa,40)
{---Vi lägger in värdet i cell 119-----------------------------------}
SetGVarIf(input,119,1)
i60(flagga)
Varför jag har kvar
rest:=mod(totalt,60)
time:=GT(rest,59)
är för att jag vill signalen och flaggan ska vara tänd sista minuten i 60 minutersperioden, jag vet detta fungerar sedan tidigare.
Jaha, vet inte om vi kommer framåt, vi får se..
Hur skulle du byggt upp ovanstående?
*En indikator slår till och är aktiv sista minuten i timman, bara för att
veta att indikatorn, dvs flaggan finns kvar nästa period.
*När indikatorn aktiverats i 59:e minuten händer inte så mycket mer.
*Nästa timmes stapel byggs upp, vid första insamlingen ska vi mäta high och
low på föregående stapel på indikatorn.
*När vi vet high and low ska vi slänga ut gula linjer som vi sedan ska agera köp eller sälj på dvs buystop, sellstop.
* Köp eller sälj ska ske när de gula linjerna passeras.
Last edited by jorgeng; 2008-10-03, 13:50.
Comment
-
rest:=mod(totalt,60)
time:=GT(rest,59)
blir aldrig sant eftersom "Större än 59" motsvarar 60 och det händer aldrig. Efter 59 stegar räknaren tillbaka till 0. Så om du ändrar till 58 tror jag det fungerar bättre.
Men som du beskriver det ska alltså föregående periods High och Low andvändas som breakout-nivåer löpande under hela dagen?
I så fall finns det ju väldigt mycket enklare sätt:
förrahigh:=Ref(h,1)
förralow:=Ref(l,1)
{ }
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,60)
time:=Eqv(rest,0) {har ändrat så att kontroll av förra periodens hi och lo görs första minuten i nuvarande period istället}
{ }
i60(
SetGVarIf(förrahigh,200,time)
SetGVarIf(förralow,201,time)
lagrathigh=GetGVar(200)
lagratlow=GetGVar(202)
Draw(lagrathigh,4,gqb)
Draw(lagratlow,5,gqb)
)
Sen är det bara att hämta värdena från cell 200 och 201 (eller de du vill använda) med raderna:
lagrathigh=GetGVar(200)
lagratlow=GetGVar(202)
och skapa köp- och säljsignaler med tex:
long:=Gt(c,lagrathigh)
short:=Lt(c,lagratlow)
Om man skippar själva rit-delen så kan man ju göra det väldigt enkelt:
long:=Gt(c,Ref(h,1))
short:=Lt(c,Ref(l,1))
Comment
-
Jo, det kan ju fungera.
Vad vi tappat bort är ju att nivåerna ska sättas om när indikatorn får nytt värde, inte på varje ny 60 min stapel.
Det kanske bara sker att indiaktorn aktiveras/visas 2 ggr per dag.
Ex. aktiveras indikatorn kl.12 och kl.15 ska high/low räknas ut och sättas om
då, inte kl.10, kl.11 mm.
Hur löser man det?
Last edited by jorgeng; 2008-10-03, 14:24.
Comment
Comment