Skip to content

Commit 06eb38e

Browse files
committed
coooking
1 parent 3070509 commit 06eb38e

20 files changed

+97
-13257
lines changed

.gitattributes

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

.gitignore

+59
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# 🌙 Moon Dev's .gitignore
2+
# Keep your secrets safe! 🔒
3+
4+
# API Keys and Sensitive Data
5+
.env
6+
dontshare.py
7+
**/dontshare.py
8+
secrets.json
9+
config.private.py
10+
MYNOTES.md
11+
12+
# Python
13+
__pycache__/
14+
*.py[cod]
15+
*$py.class
16+
*.so
17+
.Python
18+
env/
19+
build/
20+
develop-eggs/
21+
dist/
22+
downloads/
23+
eggs/
24+
.eggs/
25+
lib/
26+
lib64/
27+
parts/
28+
sdist/
29+
var/
30+
wheels/
31+
*.egg-info/
32+
.installed.cfg
33+
*.egg
34+
35+
# Virtual Environment
36+
venv/
37+
ENV/
38+
.env/
39+
.venv/
40+
41+
# IDEs and Editors
42+
.idea/
43+
.vscode/
44+
*.swp
45+
*.swo
46+
.DS_Store
47+
Thumbs.db
48+
49+
# Logs and Databases
50+
*.log
51+
*.sqlite
52+
*.db
53+
54+
# Moon Dev Trading Specific
55+
dont_overtrade.txt
56+
ohlcv_data/
57+
**/ohlcv_data/
58+
trading_history/
59+
**/trading_history/

src/agents/trading_agent.py

+26-3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,28 @@
33
Built with love by Moon Dev 🚀
44
"""
55

6+
# 🎯 Trading Strategy Prompt - The Secret Sauce!
7+
# This is where Moon Dev's trading edge lives!
8+
# Customize this prompt to create different trading strategies
9+
PROMPT = """
10+
You are Moon Dev's AI Trading Assistant 🌙
11+
12+
Analyze the provided market data and make a trading decision based on these criteria:
13+
1. Price action relative to MA20 and MA40
14+
2. RSI levels and trend
15+
3. Volume patterns
16+
4. Recent price movements
17+
18+
Respond in this exact format:
19+
1. First line must be one of: BUY, SELL, or NOTHING (in caps)
20+
2. Then explain your reasoning, including:
21+
- Technical analysis
22+
- Risk factors
23+
- Market conditions
24+
- Confidence level
25+
26+
"""
27+
628
import anthropic
729
import os
830
from termcolor import colored, cprint
@@ -33,7 +55,7 @@ def analyze_market_data(self, market_data):
3355
messages=[
3456
{
3557
"role": "user",
36-
"content": f"Analyze this market data and provide trading insights: {market_data}"
58+
"content": f"{PROMPT}\n\nMarket Data to Analyze:\n{market_data}"
3759
}
3860
]
3961
)
@@ -58,10 +80,11 @@ def main():
5880

5981
# Analyze each token's data
6082
for token, data in market_data.items():
61-
print(f"\n🔍 Analyzing {token[-4:]}...")
83+
print(f"\n🔍 Analyzing token: {token}") # Full contract address
6284
analysis = agent.analyze_market_data(data.to_dict())
63-
print(f"\n📈 Analysis for {token[-4:]}:")
85+
print(f"\n📈 Analysis for contract: {token}") # Full contract address
6486
print(analysis)
87+
print("\n" + "="*50 + "\n") # Separator for better readability
6588

6689
except KeyboardInterrupt:
6790
print("\n👋 Moon Dev AI Agent shutting down gracefully...")

src/core/config.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
SAVE_OHLCV_DATA = False # 🌙 Set to True to save data permanently, False will only use temp data during run
5151

5252
# AI Model Settings 🤖
53-
AI_MODEL = "claude-3-sonnet-20240229" # Claude model to use: claude-3-sonnet-20240229, claude-3-haiku-20240307, claude-3-opus-20240229
53+
AI_MODEL = "claude-3-haiku-20240307" # Claude model to use: claude-3-haiku-20240307,claude-3-sonnet-20240229, claude-3-opus-20240229
5454
AI_MAX_TOKENS = 1024 # Max tokens for response
5555
AI_TEMPERATURE = 0.7 # Creativity vs precision (0-1)
5656

src/core/utils/nice_funcs.py

-11
Original file line numberDiff line numberDiff line change
@@ -384,17 +384,6 @@ def get_data(address, days_back_4_data, timeframe):
384384
df.to_csv(temp_file)
385385
print(f"🔄 Moon Dev cached data for {address[:4]}")
386386

387-
# Save permanently if enabled
388-
if SAVE_OHLCV_DATA:
389-
try:
390-
os.makedirs('data/ohlcv', exist_ok=True)
391-
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
392-
filename = f"data/ohlcv/{address}_{timestamp}.csv"
393-
df.to_csv(filename)
394-
print(f"💾 Moon Dev saved permanent data for {address[:4]}")
395-
except Exception as e:
396-
print(f"❌ Error saving permanent data: {str(e)}")
397-
398387
# Calculate indicators
399388
df['MA20'] = ta.sma(df['Close'], length=20)
400389
df['RSI'] = ta.rsi(df['Close'], length=14)

src/data/ohlcv/9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump_20250101_130515.csv

-945
This file was deleted.

src/data/ohlcv/9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump_latest.csv

-945
This file was deleted.

src/data/ohlcv/Df6yfrKC8kZE3KNkrHERKzAetSxbrWeniQfyJY4Jpump_20250101_130524.csv

-945
This file was deleted.

src/data/ohlcv/Df6yfrKC8kZE3KNkrHERKzAetSxbrWeniQfyJY4Jpump_latest.csv

-945
This file was deleted.

src/data/ohlcv/ED5nyyWEzpPPiWimP8vYm7sD7TD3LAt3Q3gRTWHzPJBY_20250101_130525.csv

-945
This file was deleted.

src/data/ohlcv/ED5nyyWEzpPPiWimP8vYm7sD7TD3LAt3Q3gRTWHzPJBY_latest.csv

-945
This file was deleted.

src/data/ohlcv/EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm_20250101_130527.csv

-945
This file was deleted.

src/data/ohlcv/EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm_latest.csv

-945
This file was deleted.

src/data/ohlcv/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v_20250101_130517.csv

-945
This file was deleted.

src/data/ohlcv/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v_latest.csv

-945
This file was deleted.

src/data/ohlcv/HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC_20250101_130519.csv

-945
This file was deleted.

src/data/ohlcv/HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC_latest.csv

-945
This file was deleted.

src/data/ohlcv/v62Jv9pwMTREWV9f6TetZfMafV254vo99p7HSF25BPr_20250101_130520.csv

-945
This file was deleted.

src/data/ohlcv/v62Jv9pwMTREWV9f6TetZfMafV254vo99p7HSF25BPr_latest.csv

-945
This file was deleted.

src/data/ohlcv_collector.py

+9-12
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,12 @@ def collect_token_data(token_address, days_back=DAYSBACK_4_DATA, timeframe=DATA_
1919
df = n.get_data(token_address, days_back, timeframe)
2020

2121
if df is not None and not df.empty:
22-
# Save to CSV with timestamp
23-
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
24-
filename = f"src/data/ohlcv/{token_address}_{timestamp}.csv"
25-
df.to_csv(filename)
26-
print(f"💾 Data saved to {filename}")
27-
28-
# Also save as latest version
29-
latest_filename = f"src/data/ohlcv/{token_address}_latest.csv"
30-
df.to_csv(latest_filename)
31-
print(f"✨ Latest data updated for {token_address[-4:]}")
22+
if SAVE_OHLCV_DATA:
23+
# Save to CSV with timestamp
24+
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
25+
filename = f"src/data/ohlcv/{token_address}_{timestamp}.csv"
26+
df.to_csv(filename)
27+
print(f"💾 Data saved to {filename}")
3228

3329
return df
3430
else:
@@ -43,8 +39,9 @@ def collect_all_tokens():
4339
"""Collect data for all tokens in the config"""
4440
print("🌙 Moon Dev OHLCV Data Collector Starting Up! 🚀")
4541

46-
# Ensure the OHLCV directory exists
47-
os.makedirs("src/data/ohlcv", exist_ok=True)
42+
# Only create directory if we're saving data
43+
if SAVE_OHLCV_DATA:
44+
os.makedirs("src/data/ohlcv", exist_ok=True)
4845

4946
results = {}
5047
for token in tokens_to_trade:

0 commit comments

Comments
 (0)